text aanpassen dilemma:P

Status
Niet open voor verdere reacties.

infernothebest

Gebruiker
Lid geworden
25 feb 2008
Berichten
76
ik heb een text aanpassingsprobleem, ik hoop dat jullie dit kunnen oplossen:rolleyes::

De tekst dient max 320 tekens groot te zijn(het laatste woord dient natuurlijk niet half te zijn:P), Met een paar extras, als 1, 2, of 3 woorden terug een komma of een punt aanwezig is deze te verwijderen en de text dan natuurlijk 1, 2 of 3 woorden korter te maken. en tot slot de laatste zin laten eindigen met drie puntjes
 
:shocked: Heh .... dat klinkt echt zeer bizar en fabuleus, jij hebt een text aanpassingsproblem .... en hoop je dat wij kunne' dit oplossen ...:thumb: ...echt origineel; .... pet af ! :thumb:
 
Laatst bewerkt:
overigens zou je de woorden ook in zijn geheel kunnen verwijderen:


<?php

$string = 'Dit is een zin';
$array = explode(' ', $string);
$newstring = '';

for($i = 0; $i < count($array) && strlen($newstring) < 350; $i++) {

if(strlen($newstring . ' ' . $array[$i]) < 350) {

$newstring .= $array[$i];

} else {

break;

}
}
?>

Probeer er eens iets leuks van te maken :)
 
@5blabla5
is een manier, maar hij vroeg was om ook de . of , te gebruiken.

Maar als de string zou eindigen op een . of , dan zou je ook een rtim kunnen uitvoeren met de . en ,
 
Mwah, het is een opzetje: hij kan er ook een controleloop achteraan zetten die de array van achter naar voor doorwerkt en controleert.
 
Ik heb het script bijna af alleen moet ik nog de punt verwijderaar hebben voor 1, 2 of 3 woorden terug van rechts.
De comma verwijderaar heb ik al deze staat hieronder, alleen krijg ik als ik van de comma in een punt maak een foutieve uitkomst, heeft iemand een idee ?

PHP:
$string="piece 1 piece 2 piece 3 piece 4, piece 5. piece 6 ,.piece 7";

if(preg_match('{^(.*),(.*)$}',$string,$matches)) {
  $part1 = $matches[1];

}
$count = count(explode(" ", $string));
$count1 = count(explode(" ", $part1));
$uitkomst  = $count - $count1;
if ($uitkomst > 3) {
echo $string;
}else{	
echo $part1;//remove comma	
}
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan