在 Javascript 中:
我有一个句子“这是一个test123”,我需要匹配单词test之后的一组数字。
除了使用组之外,还有其他方法吗?
这就是我得到的,但我想在不使用组的情况下完成这项工作(如果可能的话)
var str = str.match(/test.([0-9]{1,3})/)
基本上我只需要说“任何以'test'开头的数字组”
在 Javascript 中:
我有一个句子“这是一个test123”,我需要匹配单词test之后的一组数字。
除了使用组之外,还有其他方法吗?
这就是我得到的,但我想在不使用组的情况下完成这项工作(如果可能的话)
var str = str.match(/test.([0-9]{1,3})/)
基本上我只需要说“任何以'test'开头的数字组”
简单的单行代码(但组,但简单):
"this is a test123".replace(/.*test(\d{1,3}).*/, "$1"); // "123"
或另一个版本match
:
("this is a test123".match(/test(\d{1,3})/) || []).pop(); // "123"
还有一个没有正则表达式的单行:
parseInt("this is a test123".split("test")[1], 10); // 123
如果您不喜欢这些组,您可以在一行中使用 2 个简单的功能:
str = str.match(/test[0-9]{1,3}/).toString().replace('test', '');