我試圖檢查每一行是否等於「測試」。當我嘗試運行下面的代碼時,我期望結果是真實的,因爲每一行都完全是「測試」。但結果是錯誤的。java - 意外的結果在正則表達式匹配
// Expected outcome:
// "test\ntest\ntest" - should match
// "test\nfoo\ntest" - should not match
// "test\ntesttest\ntest" - should not match
Pattern pattern = Pattern.compile("^test$", Pattern.MULTILINE);
Matcher matcher = pattern.matcher("test\ntest");
System.out.println(matcher.matches()); // result is false
我在這裏錯過了什麼?爲什麼結果是錯誤的?
正如喬說,你的正則表達式只匹配了一個字「測試」,因爲它在測試這個詞測試線和結束的開始。 –