我想在任何相对现代的浏览器中替换空格(因此对于IE,版本> = 7)。
因此,给定字符串"Hello world!"
,我们会这样做:
<script type="text/javascript">
document.write("Result: '" + "Hello world!".replace(/\s/g, '') + "'");
</script>
我们希望输出:Result: 'Helloworld!'
但是在IE7和IE8中虽然它使用了不可破坏的空间,例如其中之一: 
==
== \u00A0
例如:
<script type="text/javascript">
document.write("Result: '" + String.fromCharCode(160).replace(/\s/g, '') + "'");
</script>
在IE7和IE8中输出Result: 'Helloworld!'
在FF和IE&gt; = 9和Result : ' '
。怎么了?
这让我想知道这是否是唯一的例外?我根本找不到太多关于此的信息。是否有正则表达式删除所有空格包括不可破坏的?
答案 0 :(得分:2)
使用这个:
<击> 撞击>
<击>replace(/(?:\s|\xA0| | )+/g, '')
击> <击> 撞击>
replace(/[\s\xA0]+/g, '')