0
之間抽取內容匹配需要提取括號 爲(20)
之間的內容 - 應該返回20
爲("creamy")
- 應該返回creamy
Java的模式括號
我試着用下面的模式匹配,但沒有奏效。有人可以幫忙嗎?
Pattern pattern = Pattern.compile("\\((.*?)\\)");
之間抽取內容匹配需要提取括號 爲(20)
之間的內容 - 應該返回20
爲("creamy")
- 應該返回creamy
Java的模式括號
我試着用下面的模式匹配,但沒有奏效。有人可以幫忙嗎?
Pattern pattern = Pattern.compile("\\((.*?)\\)");
嘗試在java中使用正則表達式。查看下面的代碼片段。
String matched = "";
Pattern pattern = Pattern.compile("\\((.*?)\\)");
Matcher matcher = pattern.matcher("(20)");
if (matcher.find()) {
matched = matcher.group(1);
}
System.out.println(matched);
您是否遇到單個\的編譯器錯誤?對於在Java編譯,你需要轉義反斜線,否則編譯器將嘗試查找特殊字符(所以它應該是:
Pattern pattern = Pattern.compile("\\((.*?)\\)");
Matcher match = pattern.matcher("(cream)");
match.find();
System.out.println(match.group(1));
打印出
cream
太感謝你了它的工作原理 – user1044173 2013-03-06 10:49:39