Javascript Regex - 删除未捕获的组

标签 javascript regex

我想保留以下字符串中的 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]很愚蠢。

最佳答案

您可以使用 \D which is equivalent to [^0123456789] ( or [^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);

关于Javascript Regex - 删除未捕获的组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37065408/

相关文章:

javascript - 带有 node.js 的 Ruby 子进程

regex - DBI.pm 中的这一行是做什么的?

java - 如果以字符开头,则正则表达式不匹配

php - 在 PHP 中将 mm/dd/yy 转换为 mm/dd/yyyy

java - Quartz 在 GroupMatcher 中提供正则表达式

javascript - 如何关闭 html5 浏览器工具提示验证消息?

javascript - 如何将 form.serialize 值重复保存到变量中

javascript - Firefox 中需要双击(JQUERY)

javascript - 添加新文件后无法启动cocos

c# - 如何从字符串的开头和结尾删除 char (")?