Я знаю, что одно условие, которое im в настоящее время использует, где оно дает ошибку, если $ stringabc содержит что-либо, кроме чисел:
if(preg_match("/[^0-9]/",$stringabc))
Я хочу условие if, где он дает ошибку, если $ stringdef содержит что-либо, кроме букв, пробелов и тире (-).
Это было бы:
if(preg_match('/[^az\s-]/i',$stringabc))
для «ничего, кроме букв (az), пробелов (\ s, означает любой пробел) и дефиса (-)».
Также разрешить номера:
if(preg_match('/[^0-9a-z\s-]/i',$stringabc))
Вы можете использовать что-то вроде:
preg_match("/[^a-z0-9 -]/i", $stringabc)
Если вы хотите остановить все пробелы, другим способом вы можете это сделать
preg_match("/^[az[[:space:]]-]/i",$stringabc);