为了账号安全,请及时绑定邮箱和手机立即绑定

Javascript正则表达式匹配部分字符串,但不匹配整个字符串

Javascript正则表达式匹配部分字符串,但不匹配整个字符串

蛊毒传说 2021-05-07 14:16:31
这是我的正则表达式:(-?\d+)-(-?\d+)。目的是匹配表示范围的字符串,包括负数。例如:1-100-100-1-10, 但是也:-100--10然后,使用正则表达式,我将捕获第一个数字,最后一个数字以及整个字符串。在Angular中:let regExp : RegExp = RegExp('(-?\\d+)-(-?\\d+)', 'g'); let values: RegExpExecArray = regExp.exec('-100--10');从values结果中,我可以使用positionvalues[1]和values[2],这values[0]是为整个字符串保留的。显然,以上内容对我有用,但是您是否知道如何使我的正则表达式更加精确?即我不希望整个字符串都匹配。
查看完整描述

1 回答

?
临摹微笑

TA贡献1982条经验 获得超2个赞

由于您的模式(-?\\d+)正在重复,因此您只能使用此模式进行匹配text。


let pattern = RegExp('(-?\\d+)', 'g')

let text = '-100--10'

text.match(pattern)   //output: ["-100", "-10"]

这样,您不必匹配整个字符串。


查看完整回答
反对 回复 2021-05-20
  • 1 回答
  • 0 关注
  • 355 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信