GRY-Online.pl --> Archiwum Forum

Wyrażenie regularne - spacja :D potrzebna pomoc.

27.09.2010
15:25
[1]

Lozano23 [ Pretorianin ]

Wyrażenie regularne - spacja :D potrzebna pomoc.

Mam taki oto kod w C#:

string cancelledOpenBracket = "##3CEB6573-DBC0-4CBE-A053-DF9228D5B3E4##";
string cancelledCloseBracket = "##FE8C2990-B539-4E3F-AE20-C26B2797A4BB##";

msg = Regex.Replace(msg, "\\[(?!/?b|/?i|/?u|/?s|/?code|/?center|/?img|/?quote|quote=[\\s*\\d\\w\\#\\$]+|/?url|url\\=(?<http>(skype:)|([^\\]]*?)))", cancelledOpenBracket, m_options);

msg = Regex.Replace(msg, "(?<!b|i|u|s|code|center|img|quote|quote=[\\s*\\d\\w\\#\\$]+|url|url\\=(?<http>(skype:)|([^\\]]*?)))\\]", cancelledCloseBracket, m_options);

Z założenia ma on zamieniać nawiasy kwadratowe "[" i "]", które nie posiadają między sobą: b,i,u,s,center,img,quote(=),url(=).
Problem jest z "quote".

Mianowicie taki tag:
[cytuj=Blablabla]tekst[/cytuj] - działa
[cytuj= Blablabla]tekst[/cytuj] - też działa (spacja po '=')

Natomiast:
[cytuj=Blabla bla]tekst[/cytuj] - nie działa.

Ktoś może mi wyjaśnić dlaczego?
Przecież zdefiniowałem \\s ...

© 2000-2024 GRY-OnLine S.A.