Regulární výrazy - přepis pseudo BB - code – PHP – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Regulární výrazy - přepis pseudo BB - code – PHP – Fórum – Programujte.comRegulární výrazy - přepis pseudo BB - code – PHP – Fórum – Programujte.com

 

Blujacker
~ Moderátor
0
Grafoman
1. 2. 2008   #1
-
0
-

Mám tento regulární výraz:



function vrat_kod($kod){
$kod=$kod[0];
$kod=str_replace("[zk]\r\n","<code>",$kod);
$kod=str_replace("\n[/zk]","</code>",$kod);
$kod=str_replace("[zk]","<code>",$kod);
$kod=str_replace("[/zk]","</code>",$kod);
$kod=str_replace("\n","",$kod);

return $kod;
}
$text=preg_replace_callback("|\[zk\]([^\[]+)\[/zk\]|", "vrat_kod", $text);

Pokud ale proženu tímto regulérním výrazem např toto:


[zk]
x=S
S[4;5]
[/zk]

tak se nic nepřemění. Imho to je kvůli tomu, že součástí toho tagu [zk] je [ a ], ale jelikož php regulární výrazy neumím, jak to opravit.

Děkuji

Editoval hrach: jedná se o regulÁrní výrazy. opraveno

Nahlásit jako SPAM
IP: 213.220.226.–
Navštivte server Matematika pro každého
Najdete zde články zabývající se matematikou základních a středních škol a databázi hlavolamů.
Pro vyzkoušení Vaš
hrach
~ Redaktor
+1
Boss
3. 2. 2008   #2
-
0
-



<?php

$string = '[zk]
x=S
S[4;5]
[/zk]';


$pattern = '/\[zk\](.*)\[\/zk\]/si';
$replacement = '<code>${1}</code>';

echo htmlspecialchars(preg_replace($pattern, $replacement, $string));

Nahlásit jako SPAM
IP: 193.179.169.–
http://jan.skrasek.com@hrachcz – webdeveloper
hrach
~ Redaktor
+1
Boss
3. 2. 2008   #3
-
0
-

vylsedny script by mohl vypadat asi takto:

$string = '[zk]

x=S
S[4;5]
[/zk]';

$string = preg_replace('/\[zk\](.*)\[\/zk\]/esi', '"<code>" . nl2br("\\1") . "</code>"', $string);

echo $string;

Nahlásit jako SPAM
IP: 193.179.169.–
http://jan.skrasek.com@hrachcz – webdeveloper
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 45 hostů

Podobná vlákna

Regularni vyrazy — založil Vyhulman

Regulární výrazy — založil Nikishek

Regulární výrazy — založil Míša

Regulární výrazy — založil polonium

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý