下面是我的代码
/config/info/newplan/.test(string)
当在字符串中找到/config/info/newplan/时,它将返回 true。
但是,我想在同一时间测试不同的条件,如下所示
/config/info/newplan/.test(string) || /config/info/oldplan/.test(string) || /config/info/specplan/.test(string)
如果字符串以"newplan"或"oldplan"或"specplan"结尾,则返回true。
我的问题是如何制作更好的代码,而不是写"/config/\info/\xxxx\"这么多次?
使用交替组:
/config/info/(?:new|old|spec)plan/.test(string)
^^^^^^^^^^^^^^^
请参阅正则表达式演示。
图案详情:
config/info/
- 文本config/info/
子字符串(?:new|old|spec)
- 与任何一个子字符串匹配的非捕获组(其中|
分隔替代项):new
、old
或spec
plan
- 文本plan
子字符串
这将是你的赌注
config/info/(newplan|oldplan|specplan)/
OR
config/info/(newplan|oldplan|specplan)/.test(string)
请参阅[https://regex101.com/r/NyP1HP/1]中的示例,因为它不允许其他可能性,例如:
/config/info/new1plan/
/config/info/newoldplan/
/config/info/specplan1/