我有一个这样的字符串:obj[attr1=val1 attr2=val2 attr3=val3]
我需要提取对象名称和属性。
早些时候,我已经决定使用下一个正则表达式在 javascript 中执行类似的任务:
/^(\w+)(?:\[(\w+=\w+)(?:\s(\w+=\w+))*\])?$/
现在我在java中决定时遇到了麻烦:
Pattern pathPattern = Pattern.compile("^(\\w+)(?:\\[(\\w+=\\w+)(?:\\s+(\\w+=\\w+))*\\])?$");
我得到的只是一个对象名称和第一个属性。似乎 Mather 类在不考虑符号“*”的情况下获得了与“()”计数相对应的组计数。
是否有可能使 java reg exp 像 js regexp 一样工作,或者我需要进行两步提取?
谢谢你