我需要一个检查以下内容的regx:
starts with "prop" or "s.prop" or "evar" or "s.evar"
immediately follows and ends with a number between 1-75
case insensitive
所以可能性是:
s.prop(1-75)
prop(1-75)
evar(1-75)
s.evar(1-75)
示例值:
prop1
prop23
prop75
s.prop44
evar36
s.evar60
不匹配的值为prop76
,evar100
。在坚果壳中,我想识别s.prop1-76
或s.evar1-75
的字符串(带或不带“s”。)
***只是为了澄清它将是变量的整个值而不是子串。
谢谢!
答案 0 :(得分:1)
匹配数字范围可能很困难。我建议你匹配所有情况,然后拆分数字,将其转换为(int)并正常检查(x >= 1) AND (x <= 75)
。这样可以省去试图让正则表达式与每种可能性相匹配的麻烦
答案 1 :(得分:0)
JavaScript似乎不支持后视,因此必须这样做。您需要提取第一个匹配项以获得所需的部分。
/"((s\.)?(prop|evar)([1-6]\d|7[0-5]|[1-9]))"/i