我很困惑Java的正則表達式是如何工作的。我想從一個看起來像這樣的圖案中提取兩個字符串:Java正則表達式 - 如何獲取空格和字符?
String userstatus = "username = not ready";
Matcher matcher = Pattern.compile("(\\.*)=(\\.*)").matcher(userstatus);
System.out.println(matcher.matches());
但是,打印這將返回false。我想獲取用戶名,以及它後面的空格和等號右邊的狀態字符串,然後將它們分別存儲到兩個字符串中。
我該怎麼做?謝謝!
所以生成的字符串應該是這樣的:
String username = "username ";
String status = " not ready";
可能更好的方法是將字符串拆分到'='處,檢查是否有確切的兩個對象返回,然後修剪兩個對象。 – luk2302
當你在一個正則表達式的'.'之前加一個反斜槓時,它意味着一個文字'.'而不是「匹配任何字符」。所以你的正則表達式匹配「任意數量的點,等號,任意數量的點」。 – RealSkeptic