Ich versuche, alles aus einer Zeichenfolge zu entfernen, aber nur Zahlen (0-9).
Ich dachte das würde funktionieren ..
echo preg_replace("[^0-9]","",'604-619-5135');
Aber es gibt "604-619-5135" wieder. Was vermisse ich???
Versuche dies:
preg_replace('/[^0-9]/', '', '604-619-5135');
preg_replace verwendet PCREs, die im Allgemeinen mit a beginnen und enden /
.
(?flags)
) hielten es die Leute, die die Funktion / API entworfen / geschrieben haben, für eine gute Idee, die Regex-Flags mit der doppelten Anführungszeichen/flags
zu übergeben, anstatt einen zusätzlichen Funktionsparameter zu verwenden.Dies ist für zukünftige Entwickler, Sie können dies auch versuchen. Einfach auch
quelle
Sie müssten das Muster in ein Trennzeichen einschließen - normalerweise wird ein Schrägstrich (/) verwendet. Versuche dies:
quelle
Ein viel praktischerer Weg für diejenigen, die Regex nicht verwenden möchten:
Hinweis: Es funktioniert auch mit Telefonnummern.
quelle