2011-08-16 71 views
5

Không quan trọng có bao nhiêu chữ cái và chữ số, nhưng chuỗi phải chứa cả hai.Làm cách nào để xác thực chuỗi có chứa ít nhất một chữ cái và một chữ số trong javascript?

Chức năng Jquery $('#sample1').alphanumeric() sẽ xác thực chuỗi đã cho có chữ và số hay không. Tuy nhiên, tôi muốn xác thực rằng nó chứa cả hai.

+0

bản sao có thể có của [RegEx để đảm bảo rằng chuỗi chứa ít nhất một chữ thường, chữ hoa và chữ thường], (http://stackoverflow.com/questions/1559751/regex-to-make-sure -that-the-string-contains-at-ít-one-lower-case-char-upper-c) –

+0

Câu hỏi của bạn không rõ ràng 100%: chuỗi có cần phải là chữ và số không? Hoặc '# sample1' có hợp lệ không? – user123444555621

Trả lời

14

Vì vậy, bạn muốn kiểm tra hai điều kiện. Trong khi bạn có thể sử dụng một biểu thức chính quy phức tạp, nó tốt hơn để sử dụng hai trong số họ:

if (/\d/.test(string) && /[a-zA-Z]/.test(string)) { 

Điều này làm cho chương trình của bạn dễ đọc hơn và thậm chí có thể thực hiện tốt hơn một chút (không chắc chắn về dù đó).

0

Bạn có thể sử dụng biểu thức thông thường

/^[A-z0-9]+$/g //defines captial a-z and lowercase a-z then numbers 0 through nine 


function isAlphaNum(s){ // this function tests it 
p = /^[A-z0-9]+$/g; 
return p.test(s); 
} 
+0

Điều này không đảm bảo rằng bạn có một chữ số _and_ một lá thư nào? Chỉ cần bạn có ít nhất một trong hai. –

+0

ok, sửa nó – Drake

Các vấn đề liên quan