2013-02-11 107 views
-1

我不明白正則表達式是如何工作的,所以這可能是很多人的一個簡單問題,但對我來說非常重要的是,一個人可以用簡單的詞語來解釋我如何使用它。正則表達式函數4個字母和4個數字?

我需要在jQuery的驗證添加新的功能

$.validator.addMethod("loginRegex",function(a,b){return this.optional(b)||/^[a-zA-Z\d]+$/.test(a)},"Solo se aceptan letras o numeros"); 

此功能只接受字母和數字,但如果你把FH374HD3的驗證返回我真的,但我需要有效的4個字母和4個數字例如:「ABCD4578」,只有字母和數字,但是最後4個字母和4個數字。

那是posible?全部都是!

+0

加入一種問題,正則表達式表達式結尾的「+ $」是什麼意思......沒有重要的問題,但我想學習 – andrescabana86 2013-02-11 22:24:05

+5

你不明白正則表達式?多好的時間開始學習!閱讀一些文檔:https://developer.mozilla.org/en-US/docs/JavaScript/Guide/Regular_Expressions#Writing_a_Regular_Expression_Pattern。也很有用:http://www.regular-expressions.info/ – 2013-02-11 22:24:06

+0

@MattBall我不會說英語,所以當我學習說話更好,我閱讀指南,在那個時候...我必須使用stackoverflow! thanx stackoverflow和TNX都是因爲我的英語很糟糕,但你一直都在回答! – andrescabana86 2013-02-11 22:27:38

回答

8

這將匹配一個字符串,它正好是8個字符長,與正好四個字母開頭,後面四個數字:

/^[a-z]{4}\d{4}$/i 

這也可以寫成:

/^[A-Za-z]{4}\d{4}$/ 

與不區分大小寫內聯。

  • ^字符串
  • [a-z]字母匹配從下殼體a爲小寫z
  • {4}的開頭相匹配的先前的選擇相匹配的4倍([a-z][a-z][a-z][a-z]但在更少的字符)
  • \d比賽數字(相當於[0-9]
  • {4}如上(\d\d\d\d個但在更少的字符)
  • $字符串
  • i的結尾匹配是不區分大小寫的標誌,以便爲[a-z]大寫字母也匹配。

還應該指出,這將不匹配特殊字符,如é或à因爲它們不在範圍[a-z]中。

+0

這與/ i和/ – andrescabana86 2013-02-11 22:25:43

+0

@ andrescabana86 [**閱讀文檔**](https://developer.mozilla.org/en-US/docs/JavaScript/Guide/Regular_Expressions#Advanced_Searching_With_Flags)之間的區別 – 2013-02-11 22:28:33

+4

' [Az]'不等同於不區分大小寫的[az]'。 'Z'和'a'之間的字符不是「字母」。 '[A-Za-z]'會以適當的方式來做到這一點。 – eldarerathis 2013-02-11 22:30:04

1

你的意思是你想要一個只能驗證4個字母然後4個數字的正則表達式嗎?

也許是這樣的:

/^[A-Za-z]{4}\d{4}$/ 
+0

大聲笑打敗我 – 2013-02-11 22:26:16

2

您可以使用下面的驗證4個首都和4號:

^[A-Z]{4}\d{4}$ 
1

獨立表達。

^[a-zA-Z]{4}[\d]{4}$ 

您可以測試它像this one網站這樣你就可以使用正則表達式發揮出來(,花一些時間)...

+0

thanx的網絡,我認爲是最好的幫助,任何人都可以給我這個問題和未來的問題 – andrescabana86 2013-02-11 22:33:59

1

如已經發布嘗試: ^ [A-ZA-Z] {4} [0-9] {4}

比賽正好是4個字母(大寫藏漢)和4號

相關問題