preg_match para detectar el uso de caracteres Persa (farsi) en la cadena
-
30-09-2019 - |
Pregunta
Estoy tratando de formulario de datos de validación del lado del servidor. mi interés es que el usuario sólo tiene que rellenar el formulario de caracteres persas.
Estoy utilizando este código:
$name=trim($_POST['name']);
$name= mysql_real_escape_string($name);
if (preg_match('/^[\u0600-\u06FF]+$/',str_replace("\\\\","",$name))){$err.= "Please use Persian characters!";}
pero no está funcionando!
aquí hay una advertencia:
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
¿Qué puedo hacer?
Solución
Este 'debería' trabajo ...
** añadió a ^ después de la apertura [excluir caracteres árabe / Farsi del partido ...
if (preg_match('/^[^\x{600}-\x{6FF}]+$/u', str_replace("\\\\","",$name)))
Otros consejos
???? en 600 - gama 6FF
fa única:
preg_match('/^[پچجحخهعغفقثصضشسیبلاتنمکگوئدذرزطظژؤإأءًٌٍَُِّ\s]+$/u', $input);
es, en-num y FA caracteres:
preg_match('/^([a-zA-Z0-9 پچجحخهعغفقثصضشسیبلاتنمکگوئدذرزطظژؤإأءًٌٍَُِّ])+$/u', $input);
Se puede configurar fa-árabe números o ? ?
Debe utilizar este:
if(preg_match("/^[آ ا ب پ ت ث ج چ ح خ د ذ ر ز ژ س ش ص ض ط ظ ع غ ف ق ک گ ل م ن و ه ی]/", $_POST['name']))
esta expresión regular:
if(preg_match("/^[آ ا ب پ ت ث ج چ ح خ د ذ ر ز ژ س ش ص ض ط ظ ع غ ف ق ک گ ل م ن و ه ی]/", $_POST['name']))
números y el espacio incluido?
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow