Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Wytłumaczenie wyrażenia regularnego
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
wiciu010
Cześć,

Mam problem ze zrozumieniem poniższego zapisu wyrażenia regularne w java script:
Kod
var toReplace = new RegExp("(\\(?)22(\\))?([-. ]?)648([-. ]?)41([-. ]?)98","g");


Próbuję przetestować na stronie https://regex101.com/#javascript

Ale otrzymuję błąd przy (?)

Cytat
(? Invalid group structure
) Unmatched parenthesis


Zostawiając zapis:
Kod
var toReplace = new RegExp("(\\?22(\\))?([-. ]?)648([-. ]?)41([-. ]?)98","g");

Dostaję informację, że jest ok.

Próbuję zrobić test czy
Kod
226484198
spełnia warunek i się okazuje, że nie, ponieważ nie "łapie się" 22.

Co więc oznacza zapis:
Kod
(\\(?)22(\\))?
Kshyhoo
\ przywraca pierwotne znacznie znakom specjalnym
() nawiasy grupujące wyrażenie
? 0 lub 1 poprzedzających znaków/wyrażeń
\? - pierwszy znak "\" może wystąpić raz lub wcale

Może lepiej napisz, co chcesz osiągnąć...
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.