|
|
|
|
stran: [1] |
ExSpirit
član
št. sporočil: 15
|
 |
datum: 29.07.2010 | čas: 10:51 |
Obstaja kakšen način, kjer je možno iz besedila odstraniti nek del, ki se nahaja med dvema znakoma?
Na primer:
Koda:
$test = "[b]To je neko[/b] testno [color=red] besedilo...[/color]";
Sedaj bi rad odstranil vse kar je med (vključno z) [ ], tako da dobim "To je neko testno besedilo...".
Samo oklepaj/zaklepaj lahko odstranim z:
Koda:
$test = strip_tags(str_replace(array('[',']'), array(' ',' '), $test));
Da bi pa vključil še tisto kar je vmes mi pa ne gre.. Ima kdo kakšno idejo?
sporočilo je spremenil ExSpirit [29.07.2010 ob 11:01]
|
CiMeK
član
št. sporočil: 224
|
 |
datum: 29.07.2010 | čas: 11:29 |
Koda:
$test = "[b]To je neko[/b] testno [color=red] besedilo...[/color]";
$test = preg_replace("/\[.*?\]/", "", $test);
http://www.php.net/preg_replace
|
ExSpirit
član
št. sporočil: 15
|
 |
datum: 29.07.2010 | čas: 23:05 |
Super, zadeva deluje ampak sedaj imam še en problem, ko želim besedilo skrajšati in sicer ohranja mi <b>, <u>,... in ostale kode ki se ne zaključijo v tistem intervalu, ki ga uporabim...
Primer:
Koda:
<?
$a1 = "Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat in futurum.";
$a2 = "<b>Lorem [test] ipsum [test]dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat.</b>";
$a3 = "<u>[test]Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. .</u>";
$a4 = "Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat in futurum.";
$a1 = preg_replace('/\[([^_]+)\]/', '', $a1);
$a2 = preg_replace('/\[([^_]+)\]/', '', $a2);
$a3 = preg_replace('/\[([^_]+)\]/', '', $a3);
$a4 = preg_replace('/\[([^_]+)\]/', '', $a4);
echo substr($a1, 0, 50) . "<br /><br />";
echo substr($a2, 0, 50) . "<br /><br />";
echo substr($a3, 0, 50) . "<br /><br />";
echo substr($a4, 0, 50) . "<br /><br />";
?>
Zadeva bi morala vrniti tole:
Citiram:
"
Lorem ipsum dolor sit amet, consectetuer adipiscin
Lorem dolor sit amet, consectetuer adipiscing e
Lorem ipsum dolor sit amet, consectetuer adipis
Lorem ipsum dolor sit amet, consectetuer adipiscin
"
Ampak ta koda mi dejansko vrne tole:
Citiram:
"
Lorem ipsum dolor sit amet, consectetuer adipiscin
Lorem dolor sit amet, consectetuer adipiscing e
Lorem ipsum dolor sit amet, consectetuer adipis
Lorem ipsum dolor sit amet, consectetuer adipiscin
"
Kako zapreti vse tage oziroma popraviti to kodo?
|
|
stran: [1] |
|
|
|
stran
je še vedno v izdelavi zato nekatere stvari manjkajo
oz. niso dokončane |
|
|
|
|
| |
|