Notepad++ Regex Search XML 参数除特定单词外的任何内容
Notepad++ Regex Search XML argument for anything but certain word
我有一个结构良好的 XML 文件,其中包含多个分组单元,其中包含一致数量的子元素。
我试图找到一种方法,通过 Notepad++ 中的正则表达式,在所有这些组中搜索包含单个单词的特定参数。我找到了一种方法,但问题是我想找到这个词的否定,这意味着例如,如果这个词是“downward”我想找到任何东西不是“向下”。
这是一个例子:
<xml:jus id="84" trek="spanned" place="downward">
我想出了 <xml:jus id="\d+" trek="[\w]*" place="\<downward">
来找到这些标签,但我需要在 [=13] 中找到所有其他没有“downward”的匹配项=] 参数。我尝试了 <xml:jus id="\d+" trek="[\w]*" place="^\<downward">
但没有成功。
感谢任何帮助。
您可以使用否定前瞻将 downward
排除在以下位置之外:
<[^>]+ place="(?!downward").*?"[^>]*>
如果属性和字符串的格式相同,您也可以利用SKIP FAIL先匹配您要排除的内容。
<xml:jus id="\d+" trek="\w+" place="downward">(*SKIP)(*F)|<xml:jus id="\d+" trek="\w+" place="[^"]+">
我有一个结构良好的 XML 文件,其中包含多个分组单元,其中包含一致数量的子元素。
我试图找到一种方法,通过 Notepad++ 中的正则表达式,在所有这些组中搜索包含单个单词的特定参数。我找到了一种方法,但问题是我想找到这个词的否定,这意味着例如,如果这个词是“downward”我想找到任何东西不是“向下”。
这是一个例子:
<xml:jus id="84" trek="spanned" place="downward">
我想出了 <xml:jus id="\d+" trek="[\w]*" place="\<downward">
来找到这些标签,但我需要在 [=13] 中找到所有其他没有“downward”的匹配项=] 参数。我尝试了 <xml:jus id="\d+" trek="[\w]*" place="^\<downward">
但没有成功。
感谢任何帮助。
您可以使用否定前瞻将 downward
排除在以下位置之外:
<[^>]+ place="(?!downward").*?"[^>]*>
如果属性和字符串的格式相同,您也可以利用SKIP FAIL先匹配您要排除的内容。
<xml:jus id="\d+" trek="\w+" place="downward">(*SKIP)(*F)|<xml:jus id="\d+" trek="\w+" place="[^"]+">