我需要将以下python regexp转换为java regexp:
regexp = re.compile(r"^(?P<prefix>(%s)(%s)?)\s?\b(?P<name>.+)" %
("|".join(array1),
"|".join(array2)), re.IGNORECASE
| re.UNICODE)
其中array1和2是字符串数组。在
我所做的是:
^{pr2}$但是我得到了一个PatternSyntaxException:“Unknown look behind group near”在问号(%s)(%s)中?
我不太明白这个问号。在
关于如何将其转换为Java1.6有什么建议吗?在
很多事情都会对你不利。在
(?<
是java中一个积极的look-behind表达式。在(?P<prefix>
是python中的命名组,java中没有命名组。在对于}连接的字符串。在
%s
的String.format
和数组将不会像在python示例中那样从数组生成{首先,您需要通过
|
从数组中手动连接字符串。 当你有两条线时,你可以:regexpPattern = Pattern.compile(String.format("^((?:%s)(?:%s)?)\\s?\\b(.+)", string1, string2));
python中的
prefix
组现在是java中的组1,name
组是组2。在相关问题 更多 >
编程相关推荐