我正在按照教程here,但我遇到了一個障礙:我不知道這個腳本是幹什麼的。我搜索了這個表達式,我認爲它被稱爲正則表達式。但是,我仍然不知道它是什麼。關於java正則表達式的困惑
private static Pattern addListener = Pattern
.compile("(add\\w+?Listener\\(.*?\\))");
我正在按照教程here,但我遇到了一個障礙:我不知道這個腳本是幹什麼的。我搜索了這個表達式,我認爲它被稱爲正則表達式。但是,我仍然不知道它是什麼。關於java正則表達式的困惑
private static Pattern addListener = Pattern
.compile("(add\\w+?Listener\\(.*?\\))");
爲參照教程正則表達式將匹配JTextField
類中的所有addListener
方法定義
\w
將匹配相匹配前述單個alphabet
,number
或_
+
是量詞模式1到多次
所以,\w+
將匹配1許多單詞
.
可以匹配任何字符
*
是匹配前面的模式0至多次
所以量詞,.*
將匹配0至許多字節
?
當與.*
一起使用時使它與懶惰匹配
例如,對於輸入xyzxyz
x.*z
正則表達式將匹配xyzxyz
x.*?z
正則表達式將匹配xyz
\\(.*?\\)
將匹配內部
與所有的參數的圓括號它與以下相符翼模式: 「(add
字字符Listener(
任何字符))
其中粗體字是什麼是\\w
和.*?
相應的意思。
P.S.你應該更好地熟悉Pattern docs
你在這方面不理解哪部分?正則表達式本身,還是使用的方法? –
[或嘗試在Google上打1](http://www.regular-expressions.info/)。 –