2013-03-07 54 views
0

我試圖使用正則表達式在Exchange服務器上,以匹配規則解析字符「確實的電子郵件地址有字符1,2或3號」試圖用正則表達式

我從來沒有使用正則表達式之前,但我想出了以下,幾乎可以工作!

^([0-9] | [0-9] | [0-9])。* @ domain.com

它的工作原理,如果字符2或3的數字,但不是第一個字符

有人可以看到/解釋我哪裏去錯了嗎?

非常感謝,

Ĵ

+0

感謝您的支持,感謝您解釋並不僅僅是展示,它真的有助於理解。有一件事我不明白的是,該規則在你鏈接到的工具中檢查出來,但不在gskinner.com/RegExr/中,這是我一直使用的工具。 – UKJS 2013-03-08 09:15:36

+1

您可以在您的網站上使用「multiline」選項對其進行測試:[here](http://regexr.com?342uk) – Pilou 2013-03-11 09:56:40

回答

2

你的正則表達式是cheking如果第一個字符是數字([0-9]),數字([0-9])或數字([0-9]):([0-9]|[0-9]|[0-9])

你可以做你想做蒙山這是什麼:

^([0-9]..|.[0-9].|..[0-9]).*@domain.com 

此檢查,如果你的字符串開始:

[0-9]..一個數字,然後由兩個字符

.[0-9].字符,數字等一個或多個字符

..[0-9]兩個字符和一個數字

您可以測試它here

1

你是如果您真的想在位置上匹配字符,則在括號內使用alternation會出錯。

如果你想在位置1,2或3相匹配的數字,這會工作:

^[0-9]|^.[0-9]|^..[0-9] 

請注意,這是不會來驗證你的字符串作爲電子郵件地址,但假設你喂纔有效電子郵件地址的正則表達式,它會匹配你想要的匹配。