【发布时间】:2019-08-26 22:10:22
【问题描述】:
给定两个字符串s1 和s2,我正在尝试编写一个正则表达式来匹配以s1 开头但不以s2 结尾的字符串
示例(s1=TEST,s2=BAD)
- TEST-101 匹配
- TEST-SOME-DESC 匹配
- TEST-101-BAD 不应匹配
- TEST-SOME-DESC-BAD 不应匹配
这是我为这个示例尝试过的,但它不起作用:/^TEST-.*((?!BAD))$/
【问题讨论】:
-
@CarySwoveland 感谢您的建议,我根据您的建议改进了问题
-
好多了。
"TEST-101-SINBAD"呢? (Sinbad 在航海界享有盛誉。) -
我知道“TEST-101-SINBAD”接受的解决方案将失败(因为我希望它不匹配)。但我知道如何编写我的实际正则表达式。
-
如果您将正则表达式更改为
/^(?!.+\bBAD$)TEST-.*/,\b是一个分词,"TEST-101-SINBAD"将被接受。
标签: javascript regex ruby