foo = "$22.50 + taxes"
我想要 22.50。
尝试过:
foo.match(/^\$([^\ +])/)
我的逻辑有问题吗? “从美元符号开始,然后回退尽可能多的非 "+"
字符,然后返回该字符。
如何只获取数字部分?假设实际数字 22.5 是一个变量,可以是任何值,但它周围的文本将保持一致。
最佳答案
您可以使用此正则表达式来匹配 $
和数字:
foo.match(/^\$\d+(?:\.\d+)?\b/)
//=> ["$22.50"]
或使用前瞻从 $
开始匹配,直到得到 "+"
:
foo.match(/^\$.*(?= \+)/)
//=> ["$22.50"]
关于javascript - 厚脸皮的正则表达式帮助 : substring or match numerical part of string,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33810102/