JavaScript正则表达式替换为分组欧元符号

时间:2017-12-06 14:56:05

标签: javascript regex replace regex-lookarounds regex-group

完成替换后尝试为​ € 14,50创建Regexp必须只留下

  

14,50

也许有人可以帮忙吗?

1 个答案:

答案 0 :(得分:-1)

代码

See regex in use here

以下正则表达式只是确保其前面没有#

[^#\d](\d+(?:,\d+)?)

或者:€ *(\d+(?:,\d+)?),确保其前面有后跟任意数量的空格。

用法



var r = /[^#\d](\d+(?:,\d+)?)/g;
var s = `​ € 14,50`

console.log(r.exec(s)[1]);




<强>替代

&#13;
&#13;
var r = /€ *(\d+(?:,\d+)?)/g;
var s = `&#8203; € 14,50`

console.log(r.exec(s)[1]);
&#13;
&#13;
&#13;

说明

  • [^#\d]匹配集合中不存在的任何内容(除#和数字之外的任何内容)
  • (\d+(?:,\d+)?)将以下内容捕获到捕获组1中
    • \d+匹配任何数字一次或多次
    • (?:,\d+)?匹配以下一次或一次
      • ,字面匹配逗号字符,
      • \d+匹配任何数字一次或多次