如果文本仅包含一个字符串,则匹配文本的正则表达式

恶魔

如果只包含一个字符串,我想编写一个与文本匹配的正则表达式。文本<scr>只能包含一次。这里有些例子:

hello-<scr>Keephello-endofstring//好的; <scr>发生一次

test-<scr>bla<scr>bla-end//不好; <scr>发生两次

hello-Keephello-end//不好; <scr>不会发生

我尝试使用以下正则表达式:

((?:(?<!<scr>).)*<scr>(?:(?!<scr>).)*)

向后看的第一个负数确保<scr>不会发生这种情况。
<scr>必须跟随。
之后,负面的前瞻确保不再有<scr>后续行动。

这没用。
我想知道如何用正则表达式来完成?(附说明)

维克多·史翠比维

要检查文本是否仅包含某个子字符串一次,您需要检查是否匹配所有不构成的字符<scr>,然后匹配<scr>,并使用否定的前瞻检查是否没有<scr>进一步的字符,并消耗所有字符。此外,行/字符串边界^/$必须:

^(?:(?!<scr>).)*<scr>(?!.*<scr>).*$

观看演示

说明

  • ^-行首(因为m多行选项为开)
  • (?:(?!<scr>).)*-一个非捕获组来匹配每个字符之前的字符(不是换行符-为此,还需要添加s单行选项)<scr>
  • <scr> -我们的文字 <scr>
  • (?!.*<scr>)-后退否定性检查我们没有<scr>更多
  • .*$ -将其余字符匹配到行尾的子模式。

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在Java中使用正则表达式多次匹配一个字符串

来自分类Dev

如何检查一个字符串在GNU正则表达式中是否包含几个字符?

来自分类Dev

在两个字符串(包括第一个字符串)之间匹配的正则表达式

来自分类Dev

Java正则表达式:如果右括号是字符串中的最后一个字符,则匹配圆括号中的任何数字

来自分类Dev

正则表达式匹配不包括第一个字符的字符串

来自分类Dev

使用NSPredicate或正则表达式检查一个大字符串是否包含另一个字符串

来自分类Dev

正则表达式多个元素一个字符串

来自分类Dev

如果文本包含第二个字符串匹配项,则正则表达式排除匹配

来自分类Dev

仅当行不包含另一个字符串时,正则表达式才匹配一个字符串

来自分类Dev

正则表达式以匹配2个字符串并包含另一个字符串

来自分类Dev

正则表达式从一个字符串到另一个字符串

来自分类Dev

R:在一个字符串中匹配M个正则表达式后提取N个字符

来自分类Dev

正则表达式-任意大小的禁止重复包含仅一个字符的字符串

来自分类Dev

如果字符串* only *包含字符集中的所有*个字符,再加上可选的一个,则匹配正则表达式

来自分类Dev

正则表达式删除与第一个字符串匹配的行?

来自分类Dev

正则表达式负前瞻仅匹配一个字符

来自分类Dev

使用Ansible在正则表达式匹配行的末尾附加一个字符串

来自分类Dev

正则表达式以匹配多个字符串之一,然后是另一个字符串

来自分类Dev

得到一个字符串的PHP正则表达式匹配

来自分类Dev

两个可能包含另一个字符串的字符串之间的正则表达式匹配

来自分类Dev

正则表达式-如何在两个字符或仅一个字符之间获取字符串?

来自分类Dev

Python 3-正则表达式-匹配少一个字符的字符串

来自分类Dev

正则表达式删除与第一个字符串匹配的行?

来自分类Dev

正则表达式仅匹配一个字符串。需要它匹配两个

来自分类Dev

正则表达式匹配一个字符串但失败相同

来自分类Dev

正则表达式查找不包含数字的最后一个字符串

来自分类Dev

使用正则表达式替换匹配字符串的最后一个字符

来自分类Dev

仅当不匹配另一个字符串(类似于正则表达式或)正则表达式时才匹配字符串?

来自分类Dev

正则表达式匹配字符串中的最后一个字符 - C#

Related 相关文章

  1. 1

    在Java中使用正则表达式多次匹配一个字符串

  2. 2

    如何检查一个字符串在GNU正则表达式中是否包含几个字符?

  3. 3

    在两个字符串(包括第一个字符串)之间匹配的正则表达式

  4. 4

    Java正则表达式:如果右括号是字符串中的最后一个字符,则匹配圆括号中的任何数字

  5. 5

    正则表达式匹配不包括第一个字符的字符串

  6. 6

    使用NSPredicate或正则表达式检查一个大字符串是否包含另一个字符串

  7. 7

    正则表达式多个元素一个字符串

  8. 8

    如果文本包含第二个字符串匹配项,则正则表达式排除匹配

  9. 9

    仅当行不包含另一个字符串时,正则表达式才匹配一个字符串

  10. 10

    正则表达式以匹配2个字符串并包含另一个字符串

  11. 11

    正则表达式从一个字符串到另一个字符串

  12. 12

    R:在一个字符串中匹配M个正则表达式后提取N个字符

  13. 13

    正则表达式-任意大小的禁止重复包含仅一个字符的字符串

  14. 14

    如果字符串* only *包含字符集中的所有*个字符,再加上可选的一个,则匹配正则表达式

  15. 15

    正则表达式删除与第一个字符串匹配的行?

  16. 16

    正则表达式负前瞻仅匹配一个字符

  17. 17

    使用Ansible在正则表达式匹配行的末尾附加一个字符串

  18. 18

    正则表达式以匹配多个字符串之一,然后是另一个字符串

  19. 19

    得到一个字符串的PHP正则表达式匹配

  20. 20

    两个可能包含另一个字符串的字符串之间的正则表达式匹配

  21. 21

    正则表达式-如何在两个字符或仅一个字符之间获取字符串?

  22. 22

    Python 3-正则表达式-匹配少一个字符的字符串

  23. 23

    正则表达式删除与第一个字符串匹配的行?

  24. 24

    正则表达式仅匹配一个字符串。需要它匹配两个

  25. 25

    正则表达式匹配一个字符串但失败相同

  26. 26

    正则表达式查找不包含数字的最后一个字符串

  27. 27

    使用正则表达式替换匹配字符串的最后一个字符

  28. 28

    仅当不匹配另一个字符串(类似于正则表达式或)正则表达式时才匹配字符串?

  29. 29

    正则表达式匹配字符串中的最后一个字符 - C#

热门标签

归档