【发布时间】:2013-05-11 09:41:35
【问题描述】:
我在 JavaScript 中找到了许多解决方案来删除带有\s 的字符串中的所有空格。但我找不到针对我的具体问题的解决方案。我想将“2*2+3*5”转换为“2*2+3*5”('*' 之后没有更多空格),我已经尝试过
mot = mot.replace(/*\s/g, '*');
但它不起作用,有人有答案吗?
【问题讨论】:
标签: javascript string replace char space
我在 JavaScript 中找到了许多解决方案来删除带有\s 的字符串中的所有空格。但我找不到针对我的具体问题的解决方案。我想将“2*2+3*5”转换为“2*2+3*5”('*' 之后没有更多空格),我已经尝试过
mot = mot.replace(/*\s/g, '*');
但它不起作用,有人有答案吗?
【问题讨论】:
标签: javascript string replace char space
您需要转义 * 字符。
试试这个:"2* 2 +3* 5".replace(/\*\s/g,'*')
【讨论】:
mot = mot.replace(/(\*)\s/g, "$1");
请注意,您必须在 * 之前使用 \,因为 * 是保留字符。有了这个,您还可以在后面添加更多不允许空格的字符,例如 * 和 + 这里:
mot = mot.replace(/([*+])\s/g, "$1");
现在* 位于[] 中,您无需逃避它。最后,要一次删除多个空格,请使用
mot = mot.replace(/([*+])\s+/g, "$1");
【讨论】: