我正在學習正則表達式,並在實現中遇到了麻煩。Java正則表達式轉義字符
我發現Java教程的RegexTestHarness
,並運行它,下面的字符串正確識別我的模式:
[\d|\s][\d]\.
(我的模式是任何兩位數,或者前面有一個空格任何一個數字,然後通過一段時間)
這串由該行代碼獲得:
Pattern pattern =
Pattern.compile(console.readLine("%nEnter your regex: "));
當我嘗試寫在Eclip一個簡單的類本質上,它告訴我的轉義序列是無效的,而且將無法編譯,除非我改變字符串:
[\\d|\\s][\\d]\\.
在我的課堂我使用`Pattern pattern = Pattern.compile();
當我把這個字符串回沒有關係的TestHarness
找不到正確的匹配。
有人能告訴我哪一個是正確的嗎?是否與console.readLine()
有些格式不同?
您需要了解字符串文字和_Java_字符串轉義如何工作。 – SLaks
此外,您的正則表達式不強制執行兩位數字之前的空格。使用anubhava的正則表達式。 – Gus
我只在個位數字或雙位數字前面尋找空格(不關心前面的數字)。 –