2017-09-03 6 views
0

Ich benutze preg_replace um unerwünschte Zeichen zu entfernen. Ich habe es online gefunden und angewendet und funktioniert gut. Ich brauche dafür auch Punkte (.) Zu entfernen, Hilfe wäre zu schätzen, wie man es ändert.Punkte aus der Zeichenkette in PHP entfernen

preg_replace('#[^\pL\pN./-]+#', '', $str) 

Antwort

1

Punkt ist Regex für "alles". So sagt dein Muster (unter anderem) "." alles bedeuten.

Um einen Punkt in regex machen dot Sie es entkommen müssen mit \.

sollte Ihr Muster sein:

preg_replace('#[^\pL\pN\./-]+#', '', $str) 
+1

Sorry, aber dieses überhaupt nicht funktioniert, siehe https://3v4l.org/pH7aB. – localheinz

2

Ihre Regex beginnt mit ^ was bedeutet, dass Muster darin nicht enthalten sein, um Übereinstimmung (Musterverhandlung). So entfernen . von Muster

preg_replace('#[^\pL\pN/-]+#', '', $str) 
+1

Dies sollte die akzeptierte Antwort sein. – localheinz

Verwandte Themen