regex验证字符串并返回JAVA中的值
我有一根绳子regex验证字符串并返回JAVA中的值,java,regex,Java,Regex,我有一根绳子 String str = "//contains(@class, 'abc')])[1]//*[@name='xyz']"; 我试过了,但运气不好 "\\)\\[\\d*\\]" 我需要验证此字符串是否包含“[number]的次数与2、22等相同”,然后我只需要取出方括号中的数字,如上例中的:-1您可以使用此选项 \)\[(\d+)\] \)\]-匹配)[ (\d+)-捕获组一次或多次匹配数字 \]-匹配] 另一种方法是使用lookaround (?您可以尝试此(?这
String str = "//contains(@class, 'abc')])[1]//*[@name='xyz']";
我试过了,但运气不好
"\\)\\[\\d*\\]"
我需要验证此字符串是否包含“[number]的次数与2、22等相同”,然后我只需要取出方括号中的数字,如上例中的:-1您可以使用此选项
\)\[(\d+)\]
-匹配\)\]
)[
-捕获组一次或多次匹配数字(\d+)
-匹配\]
]
(?您可以尝试此(?这似乎是一个满足您要求的有效正则表达式。虽然您没有使用捕获组仅提取数字,但是什么阻止您从其输出中删除尾随和前导的非数字字符?感谢它的工作fine@asinha总是乐于助人:)