我需要在项目文件中找到所有<LIB>
或<M>
,但仅在没有<TOLERATED>
时才会找到。
E.g。找到这一切:
// <M> a bit of code
// <LIB> rename with prefix
但不要显示这些:
// <M><TOLERATED> a bit of code
// <TOLERATED><LIB> rename with prefix
我的尝试:
这会为您提供<LIB>
和<TOLERATED>
的结果:<LIB>(.*?)TOL
然后我试图用<TOLERATED>
否定<LIB>(.*?)(?!TOL)
,但这会让我回到<LIB>
和<TOLERATED>
我尝试了许多其他方法从搜索结果中排除<TOLERATED>
,但没有一种方法有效:
<LIB>(?!TOL\b)\b\w+
<LIB>(.*?)(?!TOL\b)\b\w+
<LIB>(.*?)(?<!TOLERATED)
<LIB>(.*?)+\b(?<!\bTOLERATED)
和其他许多人。
我一直在关注的是: RegExp in Xcode: exclude matches from result set?
感谢您的帮助 - 约瑟夫
答案 0 :(得分:2)
^(?!.*?<TOLERATED>).*?<(?:LIB|M)>