中看到我的進步正則表達式的工作Ltd[.'s]{0,2}
http://rubular.com/r/1FZvA9Nlul如何使用^(字符串的開始)在正則表達式
我運行它根據該列表:
如何寫一個正則表達式,這樣我與我目前的RegExp匹配的sdfTestLtd
和LtdTestTEst
不匹配。
爲了進一步澄清。
我通過上面所列內容通過Java的String.matches()方法,我希望它僅適用於以下方式返回true:
Ltd's
Ltd.
Ltd
Ltds
中看到我的進步正則表達式的工作Ltd[.'s]{0,2}
http://rubular.com/r/1FZvA9Nlul如何使用^(字符串的開始)在正則表達式
我運行它根據該列表:
如何寫一個正則表達式,這樣我與我目前的RegExp匹配的sdfTestLtd
和LtdTestTEst
不匹配。
爲了進一步澄清。
我通過上面所列內容通過Java的String.matches()方法,我希望它僅適用於以下方式返回true:
Ltd's
Ltd.
Ltd
Ltds
你不應該需要
。
的^ $
特殊字符,信號開始/字符串的結尾,通常不需要在Java中,如果使用String.matches()
或等效的方法,因爲Java(反之至其他搜索/匹配運營商在其他語言,反之,以Rubular工具)匹配全字符串。
System.out.println("xHello".matches("Hello"));
// false: no match
System.out.println("xHello".matches(".*Hello"));
// true: match
System.out.println("sdfTestLtd ".matches("Ltd[.'s]{0,2}"));
// false: no match
只是把^
開頭。我想你可能會對輸出的工作方式感到困惑。
它只顯示您寫入Match result:
窗口的任何內容,但只有匹配項會突出顯示。如果你也想控制字符串的結尾,比你可以使用$
爲
這應該完全符合您的例子: ^Ltd('?s|\.)?$
使用這個表達式 ^Ltd[.'s]{0,2}$
+1,儘管我更喜歡用我的正則表達式來避免任何混淆。 –
+1感謝您使用java代碼和相關信息性解釋展示示例。雖然所有其他答案對我的問題同樣正確,但是這個包含java示例,所以我選擇了這個。 – Watt