[英]Find all possible combinations of strings that match a given pattern in JS
[英]JS regex to match two possible combinations
我需要捕获字母的某种组合,后跟一个数字(任意数量),以一个称为input
的变量表示。 字母是严格的,数字不是。 字母或者在字符串的开头,也可以在反斜杠之后。
因此,例如,我需要不区分大小写地捕获:
对于这些,我有一个有效的简单规则(两个规则):
input.value.match(/^(ab|cd)[0-9]+/i) || input.value.match(/\\(ab|cd)[0-9]+/i)
但是,也有可能在我还需要捕获的设置字母之前(从头开始或在反斜杠之后)存在一个名为test
的字符串。 因此,除了仅捕获给定的两个字母外,我还需要捕获这些出现的情况,在字母之前的test
是严格因素的情况下,例如:
我很确定可以在匹配查询中放置某种“可选”查询,而无需单独重写test
规则,但是与regex一样,我不确定我在这里要看什么?
您可以使用此正则表达式:
(?:^|\\)(?:test)?(?:ab|cd)\d+
这是:
\\
test
ab
或cd
为什么不只是将文本test
设为可选?
(?:test)?(ab|cd)[0-9]+
应该适合您的任何情况。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.