假设您有以下字符串:
var string = "This shirt, is very nice. It costs DKK 1.500,00";
我想要一个返回的函数1.500,00
。
关键是,我只想允许逗号和点出现在数字之间,所以我不会得到:,.1.500,00
你会如何在 javascript 中使用正则表达式来做到这一点?
假设您有以下字符串:
var string = "This shirt, is very nice. It costs DKK 1.500,00";
我想要一个返回的函数1.500,00
。
关键是,我只想允许逗号和点出现在数字之间,所以我不会得到:,.1.500,00
你会如何在 javascript 中使用正则表达式来做到这一点?
这个怎么样- \b\d[.,\d]*\b
?
这似乎有效:
"This shirt, is very nice. It costs DKK ,.1.500,00,.".match(/(\d+\.\d+)+,\d+/g);
这可能是必需的:
\d((?=([.,]\d|\d)).)*
\d
匹配一个数字
(?=([.,]\d|\d))
是一个前瞻,它确保后面的字符是数字或 a.
或,
后跟数字。
.
匹配任何字符并允许零次*
或多次出现前面的模式