2017-09-03 1 views
0

J'utilise preg_replace pour supprimer les caractères indésirables. Je l'ai trouvé en ligne et appliqué et fonctionne bien. J'ai besoin pour cela de supprimer également les points (.), L'aide serait appréciée sur la façon de le modifier.Supprimer les points de la chaîne dans php

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

Répondre

1

Le point est regex pour "n'importe quoi". Donc, votre modèle dit (entre autres) "." signifiant quelque chose.

Pour dot un point en regex vous devez échapper à l'aide \.

Votre modèle doit être:

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

Désolé, mais cela ne fonctionne pas du tout, voir https://3v4l.org/pH7aB. – localheinz

2

Votre regex commence par ^ ce qui signifie que modèle dans ce sera pas inclus à match (négociation de modèle). Donc, retirez . du modèle

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

Ceci devrait être la réponse acceptée. – localheinz