Javascript 当字符串包含关键字时,是否可以从字符串中获取数字?

Javascript 当字符串包含关键字时,是否可以从字符串中获取数字?,javascript,string,Javascript,String,我有几个句子,例如: 价格是20.3英镑 尺寸是20.3 我想使用Java脚本来获得数字时,发现价格关键字在这些句子 据我所知 x = "the price is 20.3" y = x.otherTotal.replace(/[^0-9]/ig,"") 可以得到数字,但当句子变为 x = "the size is 20.3" 我不想返回号码。您可以查找价格,然后获取号码 函数getPrices{ return/price/i.tests&s.match/\d+\.\d*/[0]; } c

我有几个句子,例如: 价格是20.3英镑 尺寸是20.3

我想使用Java脚本来获得数字时,发现价格关键字在这些句子

据我所知

x = "the price is 20.3"
y = x.otherTotal.replace(/[^0-9]/ig,"")
可以得到数字,但当句子变为

x = "the size is 20.3"
我不想返回号码。

您可以查找价格,然后获取号码

函数getPrices{ return/price/i.tests&s.match/\d+\.\d*/[0]; } console.loggetprice价格为20.3; console.loggetprice大小为20.3 您可以使用includes检查price关键字

x=价格为20.3; 常量正则表达式=/[0-9.0-9]+/; ifx.includeprice{ console.logx.matchregex[0];
} 1检查是否包含该词 2分 3拿最后一项

x.includes('price')?x.split(' ')[x.split(' ').length-1]:false

所以匹配整个字符串

常数x1=价格为20.3 常数x2=大小为20.3 函数getPrice str{ //const match=str.match/price[^\d]*\d+\.\d+$///或者只是价格先于数字 const match=str.match/^价格为\d+\。\d+$/ 返回匹配项(&match)[1] } console.logx1,getPricex1
console.logx2,getpricex2你的问题不是很清楚,但我相信你可以通过使用regexp和match函数来实现。我想他想要的是更通用的东西->什么时候找到price关键字