Verwendung preg_match Persischer (Farsi) Zeichen in Zeichenfolge zu erkennen
-
30-09-2019 - |
Frage
Ich versuche, zu validieren Formulardaten vom Server-Seite. Mein Interesse ist, dass der Benutzer nur die Form von persischen Zeichen füllen.
Ich verwende diesen Code:
$name=trim($_POST['name']);
$name= mysql_real_escape_string($name);
if (preg_match('/^[\u0600-\u06FF]+$/',str_replace("\\\\","",$name))){$err.= "Please use Persian characters!";}
, aber es funktioniert nicht!
hier ist eine Warnung:
Warning: preg_match() [function.preg-match]: Compilation failed: PCRE does not support \L, \l, \N, \U, or \u at offset 3 in C:\xampp\htdocs\site\form.php on line 38
Was kann ich tun?
Lösung
Diese 'sollte' Arbeit ...
** hinzugefügt a ^ nach der Eröffnung [auszuschließen arabisch / farsi Charaktere aus dem Spiel ...
if (preg_match('/^[^\x{600}-\x{6FF}]+$/u', str_replace("\\\\","",$name)))
Andere Tipps
???? in 600 - 6FF Bereich
fa nur:
preg_match('/^[پچجحخهعغفقثصضشسیبلاتنمکگوئدذرزطظژؤإأءًٌٍَُِّ\s]+$/u', $input);
en, en-num und fa Charakter:
preg_match('/^([a-zA-Z0-9 پچجحخهعغفقثصضشسیبلاتنمکگوئدذرزطظژؤإأءًٌٍَُِّ])+$/u', $input);
Sie können fa-Nummern oder arabische ? ?
gesetztSie sollten diese verwenden:
if(preg_match("/^[آ ا ب پ ت ث ج چ ح خ د ذ ر ز ژ س ش ص ض ط ظ ع غ ف ق ک گ ل م ن و ه ی]/", $_POST['name']))
Diese regex:
if(preg_match("/^[آ ا ب پ ت ث ج چ ح خ د ذ ر ز ژ س ش ص ض ط ظ ع غ ف ق ک گ ل م ن و ه ی]/", $_POST['name']))
enthalten Zahlen und Raum?
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow