我有一个要求,我想在两个不同的项目形成一个长字符串。 我已经得到了下面的程序,当我做组(1)和组(6)时,我获得了必需的项目。 但我想在组(1)和组(2)中得到它。正则表达式与两个模式
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class RegexExample {
public static void main(String args[]) {
String somepattern = "((123|456)-(0|1)-((\\d-?){8})-\\d{1})/(\\d{2})";
String str = "/somethingwaste/123-0-1234-5678-9/10";
Matcher p = Pattern.compile(somepattern).matcher(str);
while (p.find()) {
System.out.println(p.group(1));
System.out.println(p.group(6));
}
任何指针方向appriciated。
感谢
魔术字是'非捕获组'。请在正则表达式文档中查找它。 – Ingo 2013-04-05 12:19:30
如果你有问题,并决定用正则表达式解决它,那么你有两个问题=) – svz 2013-04-05 12:26:12