В Javascript, есть ли способ (который выживает интернационализации), чтобы определить, является ли символ буквой или цифрой?Это правильно идентифицирует Ä, ç как буквы и неанглийские цифры (которые я не буду рассматривать в качестве примеров)!
В Java класс Character имеет несколько статических методов .isLetter (),.isDigit (), .isLetterOrDigit (), для определения международным способом, что символ на самом деле является буквой или цифрой.Это лучше, чем код типа
//this is not right, but common and easy
if((ch>='A'&&ch<='Z')||(ch>='a'&&ch<='z')) { //it's a letter
, потому что он будет подбирать неанглийские буквы.Я думаю, что C # имеет аналогичные возможности ...
Конечно, в худшем случае я могу отправить строки обратно на сервер для проверки, но это неприятно ...
Конечно, в концеЯ ищу, чтобы проверить, является ли ввод действительным именем (начинается с буквы, остальные буквы или цифры).Нестандартная возможность для малого объема использования может быть:
var validName=function(atr) {
var ele=document.createElement("div");
try { ele.setAttribute(atr,"xxx"); }
catch(e) { return false; }
return true;
}
Это достаточно неплохо для IE, FF и Chrome ... Хотя для выяснения ситуации может потребоваться тщательное тестированиенасколько последовательны ответы.И снова, не подходит для интенсивного использования из-за создания элементов.