2014-11-08 13 views
-1
表達

我在Dreamweaver的V12和測試腳本對鉻 我希望文本在表格的工作,如下所示:定期爲WD502

"E or W A to F and 3 numbers" 

例如:WD502

我的正則表達式這個:

/([EW]|[ew])([A-F]|[a-f])([0-9]{3})/ 

我在做什麼錯?

+0

[**正則表達式基礎**](http://stackoverflow.com/a/5862945/1020526) – revo 2014-11-08 13:08:46

+0

歡迎使用堆棧溢出。這不是在這裏提出問題的好方法。你有沒有嘗試解決你的問題?首先顯示你的努力,以便人們可以展示他們的努力請閱讀[常見問題](http://stackoverflow.com/tour),[如何問](http://stackoverflow.com/help/how-to-ask)和[幫助中心](http:// stackoverflow .com/help)作爲開始。 – 2014-11-08 13:09:02

+0

在你的問題中給出更多的精度:語言,你使用的方法... – 2014-11-08 13:09:08

回答

0

您需要使用錨,以確保該模式開始於字符串,終點爲字符串的結尾開始:

/^([EW])([A-F])([0-9]{3})$/i 

^字符串的開始

$結束字符串

i修飾符使模式不區分大小寫。但是,如果您正則表達式的味道不支持它,你可以寫:

/^([EWew])([A-Fa-f])([0-9]{3})$/ 

可能(因爲不給我們更多的精度),則不需要使用分隔符與您的口味,所以儘量不:

^([EWew])([A-Fa-f])([0-9]{3})$ 
+0

我做到了這一點,但它仍然返回false – Stopdrake 2014-11-08 13:11:34

+0

謝謝它的工作 – Stopdrake 2014-11-08 13:33:08

0

您還可以使用:

/^[EW][A-F]\d\d\d$/i 
-1

您忘記了或E或W之間

^([E|W]|[e|w])([A-F])([0-9]{3})$ 
+0

阿格! '|'被看作是一個字符類中的一個字面字符,它會失去其「或」的含義。 – 2014-11-08 13:23:13

+0

括號表達式與括號內包含的單個字符相匹配。不需要|。 '[A-F]'與'[ABCDEF]'相同 – Croises 2014-11-08 13:26:34