正则表达式模式以匹配不带冒号的字符串

刻板

使用正则表达式,我试图匹配满足以下条件(按显示顺序)的任何字符串:

  • 包含一个美元符号$; 然后
  • 至少一个字母[a-zA-Z]; 然后
  • 零个或多个字母,数字,下划线,句点(点),方括号和/或方括号[a-zA-Z0-9_.\[\]]*然后
  • 一个烟斗字符|; 然后
  • 一个在标志@; 然后
  • 至少一个字母[a-zA-Z]; 然后
  • 零个或多个字母,数字和/或下划线[a-zA-Z0-9_]*然后
  • 零冒号 :

换句话说,如果一个冒号在字符串的结尾处找到,那么它应该不会算作匹配。

以下是一些有效匹配的示例:

$tmp1|@hello
$x2.h|@hi_th3re
Valid match$here|@in_the middle of other characters

以下是无效匹配的一些示例:

$tmp2|@not_a_match:"because there is a colon"
$c.4a|@also_no_match:

这是我尝试过的一些模式:

(\$[a-zA-Z])([a-zA-Z0-9_.\[\]]*)(\|@)([a-zA-Z][a-zA-Z0-9_]*(?!.[:]))
(\$[a-zA-Z])([a-zA-Z0-9_.\[\]]+)?(\|@)([a-zA-Z][a-zA-Z0-9_]*(?![:]))
(\$[a-zA-Z])([a-zA-Z0-9_.\[\]]+)?(\|@)([a-zA-Z][a-zA-Z0-9_]*)([^:])
摇滚321987

这种模式将满足您的需求

\$[A-Za-z]+[\w.\[\]]*[|]@[A-Za-z]+[\w]*+(?!:)

正则表达式演示

我正在使用所有格量词来减少使用的回溯[\w]*+您还可以使用原子组代替所有格量词,例如

\$[A-Za-z]+[\w.\[\]]*[|]@[A-Za-z]+(?>[\w]*)(?!:)

笔记

\ w => [A-Za-z0-9_]

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

正则表达式模式以匹配不带冒号的字符串

来自分类Dev

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

来自分类Dev

正则表达式-匹配字符串模式

来自分类Dev

正则表达式-匹配字符串模式

来自分类Dev

正则表达式匹配带特殊字符或不带重音字符的字符串?

来自分类Dev

正则表达式匹配冒号“:”后的字符串

来自分类Dev

如何使用正则表达式匹配不带双字符的字符串

来自分类Dev

正则表达式在不带字符串的情况下匹配字符

来自分类Dev

如何使用正则表达式匹配不带双字符的字符串

来自分类Dev

拆分字符串,不带正则表达式

来自分类Dev

包含子字符串且不带空格的正则表达式模式

来自分类Dev

正则表达式-匹配字符串时不带前导和尾随空格

来自分类Dev

正则表达式以匹配变量或字符串的值(带或不带引号)

来自分类Dev

javascript正则表达式以匹配带数字和不带数字的字符串

来自分类Dev

正则表达式匹配带或不带捕获组的字符串

来自分类Dev

正则表达式提取第5到第6个冒号之间的字符串,不带空格

来自分类Dev

正则表达式匹配匹配数字或冒号周围的数字,但不匹配特定字符串

来自分类Dev

匹配基于正则表达式模式匹配scala的字符串

来自分类Dev

从仅与正则表达式模式匹配的字符串中提取字符

来自分类Dev

正则表达式可以匹配任何带引号的字符串或特定的不带引号的字符串

来自分类Dev

正则表达式模式以分割字符串

来自分类Dev

字符串模式的scala正则表达式

来自分类Dev

字符串模式的 Java 正则表达式

来自分类Dev

将字符串与多个正则表达式模式匹配

来自分类Dev

Swift正则表达式:字符串与模式匹配吗?

来自分类Dev

Python正则表达式:拆分为空字符串的模式匹配

来自分类Dev

Elisp正则表达式匹配模式并切片字符串

来自分类Dev

Java中长字符串的正则表达式模式匹配性能

来自分类Dev

使用正则表达式匹配末尾包含“(number)”模式的字符串

Related 相关文章

  1. 1

    正则表达式模式以匹配不带冒号的字符串

  2. 2

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

  3. 3

    正则表达式-匹配字符串模式

  4. 4

    正则表达式-匹配字符串模式

  5. 5

    正则表达式匹配带特殊字符或不带重音字符的字符串?

  6. 6

    正则表达式匹配冒号“:”后的字符串

  7. 7

    如何使用正则表达式匹配不带双字符的字符串

  8. 8

    正则表达式在不带字符串的情况下匹配字符

  9. 9

    如何使用正则表达式匹配不带双字符的字符串

  10. 10

    拆分字符串,不带正则表达式

  11. 11

    包含子字符串且不带空格的正则表达式模式

  12. 12

    正则表达式-匹配字符串时不带前导和尾随空格

  13. 13

    正则表达式以匹配变量或字符串的值(带或不带引号)

  14. 14

    javascript正则表达式以匹配带数字和不带数字的字符串

  15. 15

    正则表达式匹配带或不带捕获组的字符串

  16. 16

    正则表达式提取第5到第6个冒号之间的字符串,不带空格

  17. 17

    正则表达式匹配匹配数字或冒号周围的数字,但不匹配特定字符串

  18. 18

    匹配基于正则表达式模式匹配scala的字符串

  19. 19

    从仅与正则表达式模式匹配的字符串中提取字符

  20. 20

    正则表达式可以匹配任何带引号的字符串或特定的不带引号的字符串

  21. 21

    正则表达式模式以分割字符串

  22. 22

    字符串模式的scala正则表达式

  23. 23

    字符串模式的 Java 正则表达式

  24. 24

    将字符串与多个正则表达式模式匹配

  25. 25

    Swift正则表达式:字符串与模式匹配吗?

  26. 26

    Python正则表达式:拆分为空字符串的模式匹配

  27. 27

    Elisp正则表达式匹配模式并切片字符串

  28. 28

    Java中长字符串的正则表达式模式匹配性能

  29. 29

    使用正则表达式匹配末尾包含“(number)”模式的字符串

热门标签

归档