![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 70 Pomógł: 0 Dołączył: 16.10.2007 Ostrzeżenie: (0%) ![]() ![]() |
Chciałbym żeby jakiś tekst spełniał moje wyrażenie regularne wtedy kiedy zaczyna się od '<' potem następuje coś innego niż 'b', 'i', 'u', 'strong', 'a', a później jest '>'. Przykłady:
Dla: '<div>' zwraca true Dla: '<b>' zwraca false Dla: '<body>' zwraca true Dla: '<strong>' zwraca false Próbowałem w ten sposób: <(^(b|a|u|s|i|strong))> czyli najpierw '<' potem jakiś tekst inny niż 'b', 'i', 'u', 'strong', 'a', a na końcu '>' |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 332 Pomógł: 294 Dołączył: 12.10.2008 Skąd: Olkusz Ostrzeżenie: (0%) ![]() ![]() |
czyli najpierw '<' potem jakiś tekst inny niż 'b', 'i', 'u', 'strong', 'a', a na końcu '>' nie wiem do czego Ci to potrzebne więc wyszukałem tylko te znaczniki które ma znajdować wyrażenie regularne, jeśli jakieś znaczniki co mają być zaczynają się tak samo jak znaczniki co ich ma nie być to w nawiasie (?=body) poprzez wstawienie znaku | i "słowa" dodajesz kolejne wyjątki które mają należeć do wyrażenia.... - dało sie prościej gdyby działały symbole łączone w wyrażeniach - tzn teoretycznie są ale coś u mnie wywala błąd - widać nie obsługuje (więc trochu okrężna drogą ale też działa (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) ... ps. w nawiasie (?!b|a|u|strong|i|s) dodajesz te znaki których ma nie być - przy czym skoro strong nie jest na liście wyjątków to tam bez potrzeby został umieszczony ^^ - zawsze przy lub dopasowuje z lewej strony dlatego w pierwszej kolejnosci sprawdza czy jest wyjątek a potem czy nie ma wyjątków....
Ten post edytował zegarek84 8.03.2009, 18:22:38 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 11.10.2025 - 23:59 |