我有這樣一個規律:查找全球模式匹配
String pattern = "(media:\\s\\d+)"
我想匹配的
"media:" + space/no space + X
...其中X是一組數字的字符串變化。該模式可以出現在任何文字的任何地方,然後是任何東
這裏的例子:
「影響文本的時刻:相機捕捉致命的爆炸和 混亂馬拉松的終點線附近媒體:18962980視頻顯示 亞軍...下降爲爆炸的結果媒體:18967421旁觀者 拍攝了位於兩次爆炸之間的人們的混亂。「
爲此,我的模式只返回第一次出現而不是全部。 這裏是我使用的代碼:
String pattern = "(media:\\s\\d+)";
Pattern media = Pattern.compile(pattern,Pattern.MULTILINE);
java.util.regex.Matcher m = media.matcher(text);
if(m.find()) {
logger.info("-- group:"+m.group());
}
'String pattern =「(media:\\ s?\\ d +)」'? – Tunaki
請顯示代碼。或許,只需用'while'替換'if'?除非您分割字符串,否則圍繞整個模式的捕獲組是多餘的。 –