我有一根绳子abc-[|123|243|]-xyz-[|432|567|]
我想生成一个与特定字符串匹配的正则表达式。
应根据以下示例和具体结果来测试正则表达式。
Exp 1: abc-[|123|234|]-xyz-[|432|567|]
(123
存在于[|123|243|]
)
结果 :Match
Exp 2: xyz-[|123|243|]-abc-[|432|567|]
(顺序为abc
and xyz
互换)
结果 :No match
Exp 3: abc-[|243|563|]-xyz-[|432|567|]
(243
and 432
存在)
结果 :Match
Exp 4: xyz-[|143|434|]-abc-[|432|999|]
([|148|434|]
不匹配任何数字[|123|243|]
)
结果 :No match
我尝试创建一个正则表达式,但它只适用于确切的情况,而不适用于其他情况。
abc-\[\|123\||243\|\]-xyz-\[\|432\||567\|\]
您可以使用
^abc-\[\|(?:123|243)\|\d+\|\]-xyz-\[\|432\|\d+\|\]$
See the 正则表达式演示 https://regex101.com/r/Um2cMu/5.
Details
-
^
- 字符串的开头
-
abc-\[\|
- abc-[|
-
(?:123|243)
- 任何一个123
or 243
-
\|
- a |
-
\d+
- 1+ 位数字
-
\|\]-xyz-\[\|432\|
- a |]-xyz-[|432|
text
-
\d+
- 1+ 位数字
-
\|\]
- a |]
text
-
$
- 字符串结尾
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)