Obsah fóra
PravidláRegistrovaťPrihlásenie




Odpovedať na tému [ Príspevkov: 3 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
Regulárne výrazy - problém - vybrať všetko čo nieje v

Registrovaný: 16.08.07
Prihlásený: 03.10.12
Príspevky: 139
Témy: 25
Bydlisko: Bratislava
Príspevok NapísalOffline : 17.10.2007 21:50

Potrebujem vybrať všetko čo nieje v tagoch HTML. Skúsil som použiť nasledovný výraz, ale akosi mi nefunguje.
Kód:
$text = "[b]bold1[/b]
[html][b]bold2[/b][/html]
[html][b]bold3[/b][/html]
[b]bold4[/b]
";

$search = '|(.*?)\[html\](.*?)\[/html\](.*?)|is';
$replace = '$2';

echo preg_replace ($search, $replace, $text);


Očakávaný výstup:
Kód:
[b]bold2[/b][b]bold3[/b]


Skutočný výstup:
Kód:
[b]bold2[/b][b]bold3[/b] [b]bold4[/b]


Mohli by ste mi, prosím poradiť čo robím zle? Ďakujem za prípadné odpovede.

Poznámka: nedajte sa zmiast, síce chcem vybrať všetko čo nieje v tagoch HTML a uvádzam príklad na to čo v tagoch HTML je, ale práve tu sa prejavuje neštandartné (alebo nechcené) chovanie.


Offline

Užívateľ
Užívateľ
Regulárne výrazy - problém - vybrať všetko čo nieje v

Registrovaný: 16.05.07
Prihlásený: 01.08.17
Príspevky: 837
Témy: 6
Príspevok NapísalOffline : 18.10.2007 13:19

nechapem tak chces vybrat to co je v tagoch ci chces vybrat to co nieje v tagoch. Radsej by si mohol napisat ze co chces z tadial zmazat.
pretoze ked chces vyberat tak pouzi preg_match_all();
inak v patterne ti chyba '\' pred[/html]
a ked das $1 tak ti vybere
Kód:
[b]bold1[/b] [b]bold4[/b]

a ked mas taky retazec ktory obsahuje znaky odriadkovania ako v tvojom pripade, chr(10).chr(13) alebo \r\n tak tie znaky sa nepocitaju do takychto (.*).







_________________
getch();?{readkey;?} na konci? !A naco! Riesenie je (Alt+F5)
99% pochopí a shaggy je druhá kategória
Offline

Užívateľ
Užívateľ
Regulárne výrazy - problém - vybrať všetko čo nieje v

Registrovaný: 16.08.07
Prihlásený: 03.10.12
Príspevky: 139
Témy: 25
Bydlisko: Bratislava
Príspevok Napísal autor témyOffline : 18.10.2007 19:33

no, mozno som sa vyjadril trochu komplikovane.

Chcem vybrat vsetko co nieje v tagoch HTML a pouzit na to funkcie (htmlspecialchars + vlastna funkcia na dekodovanie BBC) a potom to vsetko spojit. S funkciou preg_match_all to myslim nieje mozne potom spojit (je dost mozne ze sa mylim, tu funkciu som prakticky nikdy nepouzil).

Teda priblizne takto:
Kód:
$text = "[b]bold1[/b]
[html][b]bold2[/b][/html]
[html][b]bold3[/b][/html]
[b]bold4[/b]
";

$search = '|(.*?)\[html\](.*?)\[\/html\](.*?)|ise';
$replace = 'decode_bbc(htmlspecialchars("$1"))."$2".decode_bbc(htmlspecialchars("$3"))';

echo preg_replace ($search, $replace, $text);

akurat ze toto nefunguje a neviem kde robim chybu

PS: inak to s tym odriadkovanim - je na to modifikator s a vdaka nemu . najde aj znak noveho riadku. Ale ajtak, ci som tento modifikator pouzil, ci nie, ci som ten retazec ($text) dal do jedneho riadu a co nie, vysledok sa nezmenil


Odpovedať na tému [ Príspevkov: 3 ] 


Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy. Regulárne výrazy - všetko okrem výrazu

v PHP, ASP

3

350

10.04.2012 21:44

1daemon1 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Regulárne výrazy

v Ostatné

0

718

11.02.2006 14:59

JanoF Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. regularne vyrazy

v PHP, ASP

3

385

30.01.2009 16:57

mybirthday1403 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Regulárne výrazy

v PHP, ASP

3

525

06.12.2009 14:41

Ďuri Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Regularne vyrazy

v PHP, ASP

25

1655

14.03.2011 17:30

camo Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. JAVA - regulárne výrazy

v Assembler, C, C++, Pascal, Java

0

768

26.03.2011 11:21

Shwollo Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Bash - regularne vyrazy

v Operačné systémy Unix a Linux

8

1043

16.11.2010 1:48

karco Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Regularne vyrazy v PHP

v PHP, ASP

1

441

21.10.2007 22:50

Codik Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Regulárne výrazy - negácia reťazca

v PHP, ASP

7

908

22.10.2007 20:39

juho Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Regularne vyrazy v Perl

v Perl, Python, Ruby, CGI

0

2474

21.10.2007 22:41

quark Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Regulárne výrazy porovnávané s array

v PHP, ASP

2

229

29.12.2012 15:33

Ando Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Všetko seká keď nieje vstup...

v Intel - Integrated Electronics

7

694

08.09.2017 2:45

thechosenone729 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Regulérne výrazy

v PHP, ASP

8

1081

18.07.2009 16:30

Ďuri Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. zase regularne vyrazi -pomoc

v PHP, ASP

1

465

01.10.2007 11:36

mokus Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Výrazy a priorita operátorov

v Assembler, C, C++, Pascal, Java

1

766

08.01.2009 17:17

neutronmind Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Príslušenstvo nieje podporované

v Smartfóny a tablety

5

472

23.06.2015 11:29

shiro Zobrazenie posledných príspevkov


Nemôžete zakladať nové témy v tomto fóre
Nemôžete odpovedať na témy v tomto fóre
Nemôžete upravovať svoje príspevky v tomto fóre
Nemôžete mazať svoje príspevky v tomto fóre

Skočiť na:  

Powered by phpBB Jarvis © 2005 - 2024 PCforum, webhosting by WebSupport, secured by GeoTrust, edited by JanoF
Ako väčšina webových stránok aj my používame cookies. Zotrvaním na webovej stránke súhlasíte, že ich môžeme používať.
Všeobecné podmienky, spracovanie osobných údajov a pravidlá fóra