Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java-Regex-Capture组介于&引用;_Java_Regex - Fatal编程技术网

Java-Regex-Capture组介于&引用;

Java-Regex-Capture组介于&引用;,java,regex,Java,Regex,你知道这里怎么了吗 Pattern pathsPatter = Pattern.compile("\"([^\"]+)\""); Matcher pathsMatcher = pathsPatter.matcher(commandAndParameters[1]); 我想捕获“”之间的组。例如,如果字符串为 mv "C:\Users\" "D:\" 匹配器应捕获: C:\Users\ D:\ 在这里工作很好: Pattern pathsPattern

你知道这里怎么了吗

    Pattern pathsPatter = Pattern.compile("\"([^\"]+)\"");
    Matcher pathsMatcher = pathsPatter.matcher(commandAndParameters[1]);
我想捕获“”之间的组。例如,如果字符串为

    mv "C:\Users\" "D:\"
匹配器应捕获:

    C:\Users\
    D:\
在这里工作很好:

Pattern pathsPattern = Pattern.compile("\"([^\"]+)\"");
Matcher pathsMatcher = pathsPattern.matcher("mv \"C:\\Users\\\" \"D:\\\"");
pathsMatcher.find();
System.out.println("found " + pathsMatcher.group(1)); // prints: found C:\Users\
pathsMatcher.find();
System.out.println("found " + pathsMatcher.group(1)); // prints: found D:\
尝试这种模式:

    String data = "mv \"C:\\Users\\\" \"D:\\\"";

    Pattern pattern = Pattern.compile("\"(.+?)\"");
    Matcher matcher = pattern.matcher(data);
    System.out.println("Started");
    while (matcher.find()) {
        System.out.println(matcher.group(1));
    }

你现在得到了什么输出?什么都没有。它没有捕获任何东西。它已经在这里得到了回答。它对我有效