2011-11-11 16 views
8

Olası Çoğalt:
How can i use preg_match in jQuery?Preg_match'in JavaScript karşılığı nedir?

PHP preg_match özelliğinin jquery eşdeğer nedir? PHP, şöyle olabilir:

dize harf ve rakamlardan başka bir şey varsa denetler
preg_match('/[^a-zA-Z0-9]/', $str); 

. Sitemde bazı istemci taraflı doğrulama eklemek istiyorum, ancak baktım ve baktım ve bunun jQuery eşdeğerini tam olarak bulamıyorum. Teşekkürler.

+1

yararlı başlıklar seçimi üzerine çalışın. –

cevap

3

değil jQuery ama

var myStr = "something"; 

/[^a-zA-Z0-9]/.test(myStr) // will return true or false. 

veya netlik

var regEx=/[^a-zA-Z0-9]/; 

regEx.test(myStr) 

test yöntemi RegEx nesnenin bir parçası olan JavaScript

... İşte bazı referansı

http://www.w3schools.com/jsref/jsref_regexp_test.asp

+0

Birkaç sorun burada. İlk '.test()', yalnızca bir dizge değil, düzenli bir ifade nesnesinin bir yöntemidir. İkincisi, '/ xxx /' notasyonu kullanırken normal ifadenin etrafına tırnak koymayın. Üçüncüsü, myStr 'inizde bir yerde mystring var. – jfriend00

+0

@ jfriend00 Ekranınızı, her kullanıcının cevaplarını tamamlarken aldığı 5 dakikalık zaman diliminde yenilemeniz gerekir. –

+0

Orijinal olarak cevabınız olarak yazdıklarınıza yanıt verdim. Bu gibi yorum istemiyorsanız, orijinal yanıtınız düzeltmeye bile yakın olmadığı için çok fazla hata içermemelidir. – jfriend00

8

olduğunu Düz JavaScript’te (bunun için jQuery gerekmez), sadece t o bir eşleşme yoksa null hiçbir eşleşirse ve bir dizi döndürür string nesnenin .match() yöntemi:

var str = "myteststring"; 
if (str.match(/[^a-zA-Z0-9]/)) { 
    // contains illegal characters 
} 
1

Eğer bir ipe maç için isterseniz, vanilya JS ile bunu yapabilirsiniz:

var str = "here's my string"; 
var matches = str.match('/[^a-zA-Z0-9]/'); 
Eğer bir selector'da yapmaya çalışıyor ve jQuery kullanıyorsanız

, şunları kullanabilirsiniz:

$("div:match('/[^a-zA-Z0-9]/')") 
İlgili konular