javascript替换特殊字符

时间:2010-12-03 16:04:11

标签: javascript

是否可以使用javascript字符串替换功能翻译特殊字符,如®,ü等?

5 个答案:

答案 0 :(得分:5)

当然可以!

在Firebug控制台中运行

"®ü".replace(/[®ü]/g,"replaced")

返回

“replacedreplaced”

您也可以

"®ü".replace(/[\xAE\xFC]/g,"Wohoo! ");

返回

"Wohoo! Wohoo! "

可以在http://www.ascii.cl/htmlcodes.htm

找到一个好的十六进制符号查找页面

示例

在此页面上运行此jQuery

$(".post-text").text().replace(/®/g," ******** ")

返回

" is it possible to translate special characters like ******** , ü etc with javascript 
String replace function? Use this syntax... string.replace(/\xCC/g/,''); Where 'CC' is 
the hex character code for the char you are wanting to replace. In this example I am 
replacing with empty string ''. yes, and is as simple as can be: ' ******** '.replace('
 ******** ','anything'); Sure is! Running this in the Firebug console " ******** ü".
replace(/[ ******** ü]/g,"replaced") returned replacedreplaced "

答案 1 :(得分:2)

是的,并且很简单:

'®'.replace('®','anything');

答案 2 :(得分:1)

使用此语法...

string.replace(/\xCC/g,'');

其中'CC'是您想要替换的char的十六进制字符代码。在这个例子中,我用空字符串''替换。

特别针对问题中列出的字符:

string.replace(/[\xAE\xFC]/g,'');

答案 3 :(得分:0)

(是的,我知道这个问题已经过时了,但是当我在寻找具体的东西时谷歌仍然很高,所以评论/回答可能对某些人有帮助):

以前的海报告诉你如何更换单个字符。我想补充一点,这通常不是一个好主意(当然也有例外),因为有很多可能的"特殊字符"你必须要考虑的。您最终会添加越来越多的替代品,但您仍然会遗漏一些。

通常更容易,更安全地查找其中一个内置函数来执行此操作,这将需要特殊处理的所有字符。

在你的问题中,你没有告诉我们你需要它 - 但我想3年之后,对于其他有类似问题的人来说更是如此:

如果要将字符串作为参数传递,最好使用encodeURIComponent函数。另请查看When are you supposed to use escape instead of encodeURI / encodeURIComponent?

如果您想对其他内容进行编码,最好找到适合您的内置函数。也许http://www.the-art-of-web.com/javascript/escape/http://shebang.brandonmintern.com/foolproof-html-escaping-in-javascript/(有些冗长,但对所做的事情有很好的解释)会有所帮助

答案 4 :(得分:-1)

使用此JavaScript语句替换字符串

中的所有特殊字符
var a1 = $('#txt').val().replace(/[^\x30-\x39\x41-\x5A\x61-\x7A\x20\x26\x28\x29\x2C\x27\x22\x2E\x2F\x26\x40\x5C\x7C\x3A\x2D]/g, ''); 

上述陈述将取代除集合0-9A-Za-z&(),'。。& @ \ |: - 之外的任何其他内容,即删除任何控制字符等。

更好的选择是替换ASCII字符集以外的所有字符。即。

 var a1 = $('#txt').val().replace(/[^\x20-\x7E]/g, ''); 

ASCII字符集从空格开始,即\ x20,并以波形符号结束,即\ x7E。所以替换所有其他角色;除了ASCII。

仅供参考:以防万一你不知道使用^符号表示除了给定的集合或字符。