【发布时间】:2020-10-30 03:21:42
【问题描述】:
我正在寻找一些 REGEX 或 JS 中的其他方式如何从字符串中删除十进制数字。
示例输入:
Mazda 6 2.0 Skyactiv-G Wagon 2018 - Startstop.sk - TEST
Mercedes C63 AMG Sound REVVING 6,3l V8
示例输出:
Mazda 6 Skyactiv-G Wagon 2018 - Startstop.sk - TEST
Mercedes C63 AMG Sound REVVING l V8
我看到的每一个地方,人们都希望保留整数和小数,只删除字符串。但我想保留所有整数只删除小数(用逗号, 或点.)
我尝试了类似的方法:
var string = "Mazda 6 2.0 Skyactiv-G Wagon 2018 - Startstop.sk - TEST"
parseFloat(string.match(/[\d\.]+/))
// Result is 6
但这实际上只是再次删除除整数之外的所有内容。
【问题讨论】:
-
匹配 1 个或多个数字后跟以点或逗号开头的小数部分
\d+(?:[.,]\d)+ -
6,3l?这是一个小写的“L”字符。这是故意的还是应该是 1(数字一)?re.sub(r"\b\d+[.,]\d+\b ?", "", s)? -
它是小写 L 表示它有多少升 :)
-
@Thefourthbird 看来你的答案是唯一的,所以请随意写它,因为不是评论,我会接受它
-
可能有重复的问题,例如stackoverflow.com/questions/7886593/…
标签: javascript node.js regex