【发布时间】:2015-10-04 22:49:48
【问题描述】:
我正在尝试编写一个正则表达式,它将忽略字符串的第一个字符并从第二个字符开始。
例如
str = "14";
test = "4";
仅当 4 是位置 2(字符串的结尾)而不是开头时才会匹配,以下将失败
str = "21";
test = "4";
我在 Regex 上很垃圾,到目前为止我尝试过的所有选项都没有奏效。
我现在的代码是这样的
filters = filters.replace(/,\s*$/, '');
objRegex = new RegExp('\\/^.{1}(.*)/' + filters, 'gi');
其中过滤器是由两个字符组成的随机字符串。当前的正则表达式是从另一个 SO 帖子中复制的,但它不起作用,并且鉴于我的知识有限,我不确定如何使其工作,任何人都可以提供帮助吗?
谢谢!
【问题讨论】:
-
您是否只想检查第二个字符是否为特定数字?
-
差不多,但数字不是静态的,它会改变,所以我不能依赖检查特定数字,它需要检查位置以及该数字是否在末尾然后字符串匹配
-
有什么理由不能使用
substr?例如:if( str.substr(-1) === '4' ); // If the last character in str equals '4' -
我已经使用子字符串了,谢谢!
标签: javascript regex match regex-negation