2012-08-17 18 views
5

Olası Çoğalt:
What is a regular expression for a MAC Address?JQuery/JavaScript MAC Adresi Doğrulama

Ben geçerli bir MAC Adresi olduğundan emin olmak için bir dize doğrulamak isteriz.

Jquery veya Javascript'teki herhangi bir fikir var mı?

var mystring= '004F78935612' - This type of MAC Address 
var rege = /([0-9a-fA-F][0-9a-fA-F]){5}([0-9a-fA-F][0-9a-fA-F])/; 
alert(rege.test(mystring)); 

Ama bütün bu doğru değildir:

ben şu var.

Ie. Doku kutum geçerli bir MAC adresi mi?

Teşekkürler! this question den düzenli ifade çıkarak

+0

neredeyse sadece JQuery veya JavaScript bunu nasıl uygulanacağı – Pinch

+0

@Pinch: Bu cevap içinde ifade de JavaScript çalışacak . –

cevap

10

, bunu gibi uygulamak olacaktır:

var mystring= 'Hello'; 

var regex = /^([0-9A-F]{2}[:-]){5}([0-9A-F]{2})$/; 

alert(regex.test(mystring)); 

http://jsfiddle.net/s2WDq/

Bu normal ifadesi, dize ^ başlangıcı için daha sonra İKİ onaltılık basamak [0-9A-F]{2} arama yapar [:-] ya da [:-], beş kez (...){5}, sonra bir son grup TWO onaltılı basamak [0-9A-F]{2} ve son olarak $ dizesinin sonu.

Düzenleme: Yorumunuza yanıt olarak, Pinch, bu format geçerli bir MAC adresi olarak değerlendirilmez. Eğer bunu destekleyecek isteniyorsa, bu durumda, sadece doğru yerde bir ? ekleyin:

/^([0-9A-F]{2}[:-]?){5}([0-9A-F]{2})$/ 
// question mark^allows the colon or dash to be optional 
+0

Çalışmanızı takdir ediyorum ama benim durumumda bir MAC Adresi 004F78935612 – Pinch

+0

Görünüşe göre girişiniz için değiştirilmiş desen '/^([0-9A-F] {2}) {6} $ /' olabilir, ancak bu geçerli değil [ gösterim] (https://en.wikipedia.org/wiki/MAC_address). – Bryan

+0

@Pinch, düzenlememe bak. Resmi özelliklere göre geçerli bir MAC adresi DEĞİLDİR. – jbabey