我有一个字符串:4.5 von 5 Sternen。
我想要的输出:4.5/5
我尝试了entry.rating.replace(/[a-z A-Z]/g , '/');
,结果得到了4.5/5/
,我不需要额外的斜线,只需要中间的一个将两个数字分开。我现在很想得到一些帮助。提前谢谢。
您可以在此处使用match + join
:
var s = '4.5 von 5 Sternen.';
var arr = s.match(/bd+(?:.d+)?/g);
var out = null;
if (arr != null)
out = arr.join('/');
console.log(out);
//=> 4.5/5
- 我们在
.match
中使用正则表达式bd+(?:.d+)?
来匹配一个可能是整数或浮点数的数字 - 一旦我们从
match
生成了数组,我们就使用join('/')
来获得所需的输出