2012-09-19 50 views
-5

我正在寫一個簡單的正則表達式在java中,由於某些原因,我regx不工作。正則表達式來解析一個字符串在java中

我想達到什麼是解析字符串就是

  • 始於9號
  • 恰好有10位(包括前綴9)

我正則表達式是(^9\\d[0-9]{10})和我想作爲一個例子來解析,91234567890.但它不起作用。

+2

字符串「不工作」不是Java中的內置錯誤消息。 – 2012-09-19 20:51:05

+0

@JackManet這聽起來像他意味着正則表達式不匹配,不是說有一個例外persay –

+3

@AlexColeman:本身是拉丁語,意思是「本身」或「本身」。

回答

5

你不應該逃過[(因爲這使得你的正則表達式在9之後期望字面[)。

另外,1 + 10 = 11,所以你需要降低量詞。

最後,使用結束串錨$以確保第10位後,沒有出現其他字符:

^9[0-9]{9}$ 
+0

謝謝,它的工作。(它匹配字符串:) :) – Tony

3
9[0-9]{9} 

應該工作。它查找數字9,然後是9個數字

+0

這工作iff託尼正在使用'.matches()'方法。 –

+0

@TimPietzcker好點,但我認爲他會用它來匹配多個實例 –

相關問題