正则表达式匹配不包含字符串的字符串

磁通

我想,以取代所有的<span...>(包括<span id="...<span class="...由)在HTML<span>除非由跨度开始<span id="textmarker(例如我不想把这个跨度:<span attr="blah" id="textmarker">

我已经尝试过在这里这里提出的正则表达式,最后想出了这个正则表达式,它从不返回a,<span id="textmarker但有时会错过其他范围:

<span(?!.*? id="textmarker).*?">

您可以在这里看到我的(简体)html:https//regex101.com/r/yT9jG2/2

奇怪的是,如果我在notepad ++中运行regex,它将返回3个匹配项(第二段中的三个跨度),但是regex101仅返回1个匹配项。Notepad ++和regex101都错过了第一段的跨度。

此正则表达式也不会返回它应该的所有跨度(请参见此处具有灰色突出显示的跨度

<span(?![^>]*? id="textmarker)[^>]*?>
清晰度123

更新:要排除id="textmarker包括id="anythingelse和所有其他spans,请执行以下操作:

(<span(?! *id="textmarker)[^>]*>)

在您发布的示例上:https : //regex101.com/r/yT9jG2/2,然后在顶部选择version 2,将字段设置为:

  • 栏位1: (<span(?! *id="textmarker)[^>]*>)
  • 栏位2(可让您设定修饰符的较小栏位): g

在您的示例中选择version 2,匹配9并在右侧列出它们,包括空跨度以及非跨度,id="textmarker例如<span id="YellowType">

解释

栏位1:

  • 可选:()出于教育目的,在表达式中添加了一个额外的外部括号,仅用于使用regex101的匹配组列表功能,除了默认的内联突出显示匹配项外,还在右窗格中列出结果。使用Notepad ++时,您当然可以省略这些外( )括号。
  • <span: 火柴 <span
  • (?! 对以下内容启动否定的超前断言,
  • * 表示空间零次或多次,以防您有多余的空间
  • 其次是 id="textmarker
  • ) 结束负面的超前断言
  • 因此,如果匹配项看到否定的超前断言,它将自动将其丢弃为匹配项
  • [^启动一个排除集。因此not of of the following,以下是>
  • ] 停止定义排除
  • *匹配前面的0次或多次。之前的存在[^>]
  • > 匹配open-a-span标签的结尾

领域2

  • g 告诉regex101您希望这是一个贪婪的比赛
  • 因此结果不会在第一个比赛中停止,而是会包含所有比赛

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

正则表达式匹配不包含子字符串的字符串

来自分类Dev

正则表达式不匹配字符串

来自分类Dev

正则表达式与字符串不匹配

来自分类Dev

字符串与正则表达式不匹配

来自分类Dev

正则表达式与字符串不匹配

来自分类常见问题

分割不包含与Java中的正则表达式匹配的相邻字符的字符串

来自分类Dev

正则表达式匹配至少不包含X个字符的字符串

来自分类Dev

正则表达式匹配匹配字符串旁边不包含特定单词的字符串

来自分类Dev

正则表达式匹配URL,其中不包含字符串,但还包含其他字符串

来自分类Dev

正则表达式匹配URL,其中不包含字符串,但还包含其他字符串

来自分类Dev

正则表达式以匹配包含某些字符串而不包含其他字符串的行

来自分类Dev

匹配字符串不包含带有正则表达式的子字符串

来自分类Dev

正则表达式匹配以字符串结尾或不包含任何内容的字符串

来自分类Dev

正则表达式与包含4个组的字符串不匹配

来自分类Dev

正则表达式匹配不包含所有指定元素的字符串

来自分类Dev

当字符串包含空格时,正则表达式不匹配

来自分类Dev

正则表达式与包含4个组的字符串不匹配

来自分类Dev

如何查找在正则表达式中不包含字符串的匹配项

来自分类Dev

Python正则表达式-不包含字符串的匹配模式

来自分类Dev

输入字符串包含与号时,正则表达式不匹配

来自分类Dev

正则表达式匹配的字符串不结束或包含文件扩展名

来自分类Dev

正则表达式以匹配包含以点分隔的子字符串的字符串

来自分类Dev

正则表达式-查找不包含子字符串的多行字符串

来自分类Dev

正则表达式如何匹配不包含固定字符串的子字符串。正则表达式在Traefik

来自分类Dev

正则表达式匹配,其中字符串的一部分不包含字符

来自分类Dev

如何使用Java正则表达式匹配既不包含A也不包含B的字符串?

来自分类Dev

使用正则表达式匹配字符串?

来自分类Dev

Java正则表达式匹配字符串

来自分类Dev

返回匹配正则表达式的字符串

Related 相关文章

  1. 1

    正则表达式匹配不包含子字符串的字符串

  2. 2

    正则表达式不匹配字符串

  3. 3

    正则表达式与字符串不匹配

  4. 4

    字符串与正则表达式不匹配

  5. 5

    正则表达式与字符串不匹配

  6. 6

    分割不包含与Java中的正则表达式匹配的相邻字符的字符串

  7. 7

    正则表达式匹配至少不包含X个字符的字符串

  8. 8

    正则表达式匹配匹配字符串旁边不包含特定单词的字符串

  9. 9

    正则表达式匹配URL,其中不包含字符串,但还包含其他字符串

  10. 10

    正则表达式匹配URL,其中不包含字符串,但还包含其他字符串

  11. 11

    正则表达式以匹配包含某些字符串而不包含其他字符串的行

  12. 12

    匹配字符串不包含带有正则表达式的子字符串

  13. 13

    正则表达式匹配以字符串结尾或不包含任何内容的字符串

  14. 14

    正则表达式与包含4个组的字符串不匹配

  15. 15

    正则表达式匹配不包含所有指定元素的字符串

  16. 16

    当字符串包含空格时,正则表达式不匹配

  17. 17

    正则表达式与包含4个组的字符串不匹配

  18. 18

    如何查找在正则表达式中不包含字符串的匹配项

  19. 19

    Python正则表达式-不包含字符串的匹配模式

  20. 20

    输入字符串包含与号时,正则表达式不匹配

  21. 21

    正则表达式匹配的字符串不结束或包含文件扩展名

  22. 22

    正则表达式以匹配包含以点分隔的子字符串的字符串

  23. 23

    正则表达式-查找不包含子字符串的多行字符串

  24. 24

    正则表达式如何匹配不包含固定字符串的子字符串。正则表达式在Traefik

  25. 25

    正则表达式匹配,其中字符串的一部分不包含字符

  26. 26

    如何使用Java正则表达式匹配既不包含A也不包含B的字符串?

  27. 27

    使用正则表达式匹配字符串?

  28. 28

    Java正则表达式匹配字符串

  29. 29

    返回匹配正则表达式的字符串

热门标签

归档