Вы пытаетесь проверить, являются ли все буквы не латиницей, но вы принимаете акцентированные буквы.
Простое решение - проверить строку с помощьюрегулярное выражение (это полезно, если у вас есть плагин проверки):
/^[^a-z]+$/i
^...$
- совпадение от начала до конца ^[...]
- символы не a-z
- хотя Z, +
- хотя бы с одной буквой /i
- игнорирование регистра (также может быть сделано/^[^a-zA-Z]+$/
)
Другой вариант - просто искать букву:
/[a-z]/i
Это регулярное выражение будет соответствовать, если строка содержит букву, поэтомуВы можете аннулировать его.
В JavaScript вы можете легко это проверить с помощью if
:
var s = "שלום עולם";
if(s.match(/^[^a-z]+$/i){
}
или
if(!s.match(/[a-z]/i))
PHP имеет другой синтаксис и большую безопасностьчем JavaScript, но регулярные выражения такие же.