我想做一個正則表達式,但我是新手。而且好像我在這一次又一次的失敗..Android的正則表達式製作
請,如果有人能幫助我
基本上我想,對於下面的測試表達式,
1-東西以abc或def開頭,後面跟着0到900之間的數字,然後可以有任何東西,直到最接近的 !!
任何幫助將被視爲
問候
我想做一個正則表達式,但我是新手。而且好像我在這一次又一次的失敗..Android的正則表達式製作
請,如果有人能幫助我
基本上我想,對於下面的測試表達式,
1-東西以abc或def開頭,後面跟着0到900之間的數字,然後可以有任何東西,直到最接近的 !!
任何幫助將被視爲
問候
如果你想要這個abcXXX(0<xxx<900)
或defXXX (0<xxx<900)
試試這個:
\b(abc)([0-9]|[1-9][0-9]|[1-8][0-9][0-9]|900)\b|\b(def)([0-9]|[1-9][0-9]|[1-8][0-9[0-9]|900)\b]
說明:正則表達式[0-9]
比賽的1位數字0到9. [1-9][0-9]
匹配兩位數字10到99.這就是簡單一部分。所以0-900
是0-899
和900
因此REGEX是[0-9]|[1-9][0-9]|[1-8][0-9][0-9]|900
。添加\b()\b
是Boundary Matchers。與def
類似:從def
開始,後跟3位數字。
\b(def)([0-9]|[1-9][0-9]|[1-8][0-9][0-9]|900)\b
最後用|
是or
。
測試與Regular Expression Test Page for Java
也許我沒有嘗試一些奇怪的輸入,但是這是基本的部分,爲您自己
編輯與艾倫·摩爾的更好建議挖:
\b(abc|def)([0-9]|[1-9][0-9]|[1-8][0-9][0-9]|900)\b
+1,但是yu不必重複整個正則表達式。這會做:'\ b(abc | def)([0-9] | [1-9] [0-9] | [1-8] [0-9] [0-9] | 900)\ b ' – 2012-08-12 22:33:42
以下正則表達式將與表達式的第一部分匹配。很難理解表達的第二部分。
東西與ABC或DEF開始,接着是編號0 和900
^(abc|def)([0-9]{1,2}|[1-8][0-9]{2}|900)
之間我解釋下面的表達式。
^(abc|def) //Starts with abc or def
(
[0-9]{1,2}|[1-8][0-9]{2}|900 // matches number between 0-900
)
你能舉個例子嗎? 「你的意思是」之間可以有任何東西,直到最近!!「 ? – 2012-08-12 10:35:48
最近的「!!」 xD – 2012-08-12 10:59:44
添加一些你想要捕捉的例子。 'then ...'部分難以理解 – 2012-08-12 12:28:54