Próbuję usunąć wszystko z ciągu, ale tylko liczby (0-9).
Myślałem, że to zadziała ...
echo preg_replace("[^0-9]","",'604-619-5135');
Ale to echo „604-619-5135”. Czego mi brakuje???
Spróbuj tego:
preg_replace('/[^0-9]/', '', '604-619-5135');
preg_replace używa PCRE, które zazwyczaj zaczynają się i kończą na /
.
(?flags)
) ludzie, którzy zaprojektowali / napisali funkcję / API, uważali, że dobrym pomysłem jest przekazanie flag wyrażenia regularnego w/flags
postaci podwójnego cudzysłowu, zamiast używania dodatkowego parametru funkcji.To jest dla przyszłych programistów, możesz też spróbować. Proste też
źródło
Wzorzec należy umieścić w ograniczniku - zwykle używany jest ukośnik (/). Spróbuj tego:
źródło
dużo bardziej praktyczny sposób dla tych, którzy nie chcą używać wyrażenia regularnego:
Uwaga: działa również z numerami telefonów.
źródło