我需要使用包含除点之外的所有 \b 字符的正则表达式,.
就像是[\b&&[^.]]
例如,在以下测试字符串中:
"somewhere deep down in some org.argouml.swingext classes and"
我想要org.argouml.swingext
字符串匹配但org.argouml
字符串不太匹配。(使用Matcher.find()
方法)
如果我使用:\b(package_name)>\b
它们都匹配,这不是我想要的。
如果我使用:\b(package_name)[\b&&[^\.]]
我得到一个PatternSyntaxException
如果我使用:\b(package_name)(\b&&[^\.])
没有匹配项。
我使用这个链接来测试我的正则表达式。
上下文:我有一个项目中的包名称列表,我必须在一些文本中搜索它们。显然,如果找到嵌套包,我不希望外部包也匹配,如上例所示。
我没有\s
在末尾使用字符类,因为包可能位于行尾,或者它后面可能跟着其他非单词字符,例如:
类)
中包含的字符\b
。我只想减去 . 来自 \b 类。
如果有人知道如何做到这一点,我将非常感激:) 谢谢