Javascript正则表达式-删除未捕获的组

Liren Yeo

我想保留20V以下字符串中的,并删除其他所有内容:

Range    20V    0.5A

我正在使用以下正则表达式捕获20V:

/[^0123456789]*(\d+V).*/g

因此,在Javascript中,如何删除未从字符串中捕获的所有内容?我尝试了一下,它删除了所有内容:

var myString = "Range   20V   0.5A"
var newString = myString.replace(/[^0123456789]*(\d+V).*/g, "")

另外,如果可能的话,请提出一个更好的正则表达式,我觉得这[^0123456789]很愚蠢。

普拉纳夫·C·巴兰(Pranav C Balan)

您可以使用\D[^0123456789](或[^0-9]等效的值然后您可以在其中使用$1获取捕获的字符串replace()

var myString = "Range   20V   0.5A"
var newString = myString.replace(/\D*(\d+V).*/g, "$1")
console.log(newString);


或者简单地使用获取捕获的字符串 match()

var myString = "Range   20V   0.5A"
var newString = myString.match(/\D*(\d+V).*/)[1];
console.log(newString);

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章