Как проверить буквенно-цифровые символы

Я пишу специальный метод для плагина jQuery:

jQuery.validator.addMethod("alphanumeric", function(value, element) {
        return this.optional(element) || (/*contains "^[a-zA-Z0-9]*$"*/);
});

Я знаю регулярное выражение для чего хочу, но я не уверен, как написать что-то в JS, которое будет оценивать True, если оно содержит буквенно-цифровые символы. Любая помощь?

Ответ 1

См. test Метод RegExp.

jQuery.validator.addMethod("alphanumeric", function(value, element) {
        return this.optional(element) || /^[a-zA-Z0-9]+$/.test(value);
}); 

Ответ 2

Если вы хотите использовать испанские символы в своей буквенно-цифровой проверке, вы можете использовать это:

jQuery.validator.addMethod("alphanumeric", function(value, element) {
    return this.optional(element) || /^[a-zA-Z0-9áéíóúÁÉÍÓÚÑñ ]+$/.test(value);
});

Я также добавил пустое место, чтобы пользователи могли добавлять слова

Ответ 3

// use below ... It is better parvez abobjects.com
jQuery.validator.addMethod("postalcode", function(postalcode, element) {
    if( this.optional(element) || /^[a-zA-Z\u00C0-\u00ff]+$/.test(postalcode)){ 
         return false;
    }else{ 
         return this.optional(element) || /^[a-zA-Z0-9]+/.test(postalcode); 
    } 

}, "<br>Invalid zip code");



rules:{
  ccZip:{          
           postalcode : true
       },
       phone:{required: true},

This will validate zip code having no letters but alphanumeric

Ответ 4

Вы можете использовать регулярные выражения в JavaScript:

if( yourstring.match(/^[a-zA-Z0-9]+/) ) {
     return true
}

Обратите внимание, что вместо * я использовал +. С * он вернет true, если строка пуста

Ответ 5

$("input:text").filter(function() {
    return this.value.match(/^[a-zA-Z0-9]+/);
})