如何使用regex和Javascript获取以数字开头的第一个单词?

如何使用regex和Javascript获取以数字开头的第一个单词?,javascript,regex,Javascript,Regex,我不知道如何编写一个正则表达式模式来捕获第一个数字之后开始的所有单词。为了清楚起见,下面有两个示例: var string1 = "Area 51"; // This is the string I have var match1 = "51"; // This is the string I want 或者这个: var string2 = "A simple sentence with 6 words or more" // This is the string I have var ma

我不知道如何编写一个正则表达式模式来捕获第一个数字之后开始的所有单词。为了清楚起见,下面有两个示例:

var string1 = "Area 51"; // This is the string I have
var match1 = "51"; // This is the string I want
或者这个:

var string2 = "A simple sentence with 6 words or more" // This is the string I have
var matchedString = "6 words or more" // This is the string I want

有什么想法吗?

您可以使用正则表达式和方法进行模式匹配

var string1=“区域51”//这是我的绳子
var match1=string1.match(/\b\d+\b.*$/)[0];
var string2=“一个包含6个或更多单词的简单句子”//这是我的字符串
var matchedString=string2.match(/\b\d+\b.*$/)[0];//这是我想要的绳子

document.write(match1+'
'+matchedString)您可以使用正则表达式和方法进行模式匹配

var string1=“区域51”//这是我的绳子
var match1=string1.match(/\b\d+\b.*$/)[0];
var string2=“一个包含6个或更多单词的简单句子”//这是我的字符串
var matchedString=string2.match(/\b\d+\b.*$/)[0];//这是我想要的绳子

document.write(match1+'
'+matchedString)使用
\b
单词边界,后跟
\d
查找以数字开头的单词

var str=“简单测试1字符串2,其中有3个从4到5的数字。”;

警报(str.match(/\b\d.*/)[0])使用
\b
单词边界,后跟
\d
查找以数字开头的单词

var str=“简单测试1字符串2,其中有3个从4到5的数字。”;

警报(str.match(/\b\d.*/)[0])当单词中间有一个数字时,这将失败。代码>“一个包含6个或更多单词的简单句子”
将返回
1e包含6个或更多单词的句子。使用类似于
match(/\b\d.*/)[0]
的单词边界在编辑后似乎可以,但现在它将只匹配仅为数字的单词。例如,它将不匹配
1字符串
。这个问题尚不清楚,所以这可能是也可能不是你想要的行为。@欧赞:谢谢你的支持,再次更新:当一个词中间有一个数字时,这将失败。代码>“一个包含6个或更多单词的简单句子”
将返回
1e包含6个或更多单词的句子。使用类似于
match(/\b\d.*/)[0]
的单词边界在编辑后似乎可以,但现在它将只匹配仅为数字的单词。例如,它将不匹配
1字符串
。这方面的问题不清楚,所以这可能是也可能不是通缉犯的行为。@Ozan:感谢您的支持,再次更新:)