gpt4 book ai didi

javascript - 数字后跟单词的正则表达式

转载 作者:行者123 更新时间:2023-11-30 13:15:17 24 4
gpt4 key购买 nike

在 JavaScript 中,数字后跟单词的正则表达式是什么?我需要捕捉数字和单词,并在经过一些计算后将它们替换掉。

以下是示例形式的条件:

123 dollars => Catch the '123' and the 'dollars'.
foo bar 0.2 dollars => 0.2 and dollars
foo bar.5 dollar => 5 and dollar (notice the dot before 5)
foo bar.5.6 dollar => 5.6 and dollar
foo bar.5.6.7 dollar => skip (could be only 0 or 1 dot)
foo bar5 dollar => skip
foo bar 5dollar => 5 and dollar
5dollar => 5 and dollar
foo bar5dollar => skip
  • 当然 123.555、0.365、5454.1 也是数字。
  • 为了使事情更简单,这个词是一个特定的词(例如美元|欧元|日元)。

  • 好的..谢谢大家...这是我到目前为止所做的基本功能:

    var text = "foo bar 15 美元。bla bla..";变种货币= { 美元:0.795};

    document.write(text.replace(/\b((?:\d+.)?\d+) *([a-zA-Z]+)/, function(a,b,c){ 返回货币[c] ? b * currencys[c] + '欧元' : a; }));

最佳答案

试试这个:

/\b(\d*\.?\d+) *([a-zA-Z]+)/

这也将匹配 .5 tests 之类的东西。如果你不想要那个,使用这个:

/\b((?:\d+\.)?\d+) *([a-zA-Z]+)/

并避免匹配“5.5.5 美元”:

/(?:[^\d]\.| |^)((?:\d+\.)?\d+) *([a-zA-Z]+)/

关于javascript - 数字后跟单词的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12221637/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com