que necesito la expresión regular para comprobar si una cadena contiene sólo números, letras, guiones o guiónPHP - sólo permiten cadenas alfanuméricas y - _ caracteres
$string1 = "This is a string*";
$string2 = "this_is-a-string";
if(preg_match('******', $string1){
echo "String 1 not acceptable acceptable";
// String2 acceptable
}
Esto permite caracteres chinos como "你好" de todos modos para controlar esto también? – aahhaa
@wlin necesita agregar '\ x {4e00} - \ x {9fa5}' a la definición de clase de charecter, también agregue el modificador 'u' para tratar la cadena y el patrón como UTF-8. Se verá así '/ [^ a-z _ \ - 0-9 \ x {4e00} - \ x {9fa5}]/ui' puede probarlo aquí: https://xrg.es/#1qvtb7n – SERPRO