我想用正則表達式來抓取2個完整的字符串。我已經得到了正則表達式工作的罰款http://gskinner.com/RegExr/Java正則表達式組與。* vs正常正則表達式
下面是一個簡單的字符串:
Regex is fun when it works 99
這裏是我的正則表達式
(.*)\\s+(\\d+)$
這些羣體使用Java的匹配,當我得到(匹配())和模式:
1: Regex is fun when it works 99
2: Regex is fun when it works
使用正則表達式正常(上RegExr),我得到的結果我居然想到:
1: Regex is fun when it works
2: 99
正在那裏正則表達式的時候,我需要知道什麼注意事項到Java?我已經有了特殊字符。也許有一個使用技巧。 ?
如果你想有一個示例應用程序進行復制和粘貼:
String str = "Regex is fun when it works 33";
String regx = "(.*)\\s+(\\d+)$"
Pattern p = Pattern.compile(regx);
Matcher m = p.matcher(str);
if (m.matches()) {
for (int i = 0; i < m.groupCount(); i++) {
System.out.println(i + ": " + m.group(i));
}
}
示例代碼+1。 – MikeM