Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/19.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正则表达式中包含命名捕获组?_Java_Regex - Fatal编程技术网

如何在java正则表达式中包含命名捕获组?

如何在java正则表达式中包含命名捕获组?,java,regex,Java,Regex,我不熟悉Java中的正则表达式,不知道如何在表达式中包含命名的捕获组。我正在为你写一个螺旋旋转的图像转换器。这就是我所拥有的: String image = "\\[image(?<align>auto)?\\|\\|{UP\\(((?<namespace>\\w+)\\.)?(?<pagename>[\\w-]+)\\)}(?<filename>[\\w- ]+\\.[\\w]+)\\]"; Pattern imagePattern = Pat

我不熟悉Java中的正则表达式,不知道如何在表达式中包含命名的捕获组。我正在为你写一个螺旋旋转的图像转换器。这就是我所拥有的:

String image = "\\[image(?<align>auto)?\\|\\|{UP\\(((?<namespace>\\w+)\\.)?(?<pagename>[\\w-]+)\\)}(?<filename>[\\w- ]+\\.[\\w]+)\\]";

Pattern imagePattern = Pattern.compile(image, Pattern.CASE_INSENSITIVE);

我以前在C#
(?asdf)
中使用过这样的命名捕获组,但在Java中没有。我缺少什么?

Java不支持命名捕获


来源:

在版本7:vs中,Java似乎只会开始支持命名捕获组

另请参见:

它现在在JDK 7中有:
java.util.regex.PatternSyntaxException: Unknown look-behind group near index 19
\[image(?<align>auto)?\|\|{UP\(((?<namespace>\w+)\.)?(?<pagename>[\w-]+)\)}(?<filename>[\w- ]+\.[\w]+)\]
                   ^