我有这个字符串‘Some string here’
。我想从这个字符串中删除这些奇怪的字符(“—,“—)。我目前正在使用replace()
函数,但它不会用空字符串替换它。下面是脚本。我该如何删除它?
for (var i = 0, len = el.length; i < len; i++) {
$(el[i]).text().replace("‘", "");
}
答案 0 :(得分:3)
你必须删除ascii值小于127
的元素var input="‘Some string here’.";
var output = "";
for (var i=0; i<input.length; i++) {
if (input.charCodeAt(i) <= 127) {
output += input.charAt(i);
}
}
alert(output);//Some string here.
或
删除你的循环并尝试
$(el[i]).text().replace("‘","").replace("’","");
答案 1 :(得分:1)
那些奇怪的角色可能并不那么奇怪;它们很可能是character encoding problem的症状。猜测一下,它们smart quotes没有正确显示。
您应该更新您的页面,使其显示为UTF-8,而不是尝试将它们从文本中删除。在页眉中添加:
<meta charset="utf-8" />
那么为什么会这样呢?基本上,大多数字符编码对于“简单”文本是相同的 - 字母,数字,一些符号 - 但对于不太常见的字符(重音符号,其他字母表,不太常见的符号等)具有不同的表示。当您的浏览器获取文档而没有任何其字符编码的指示时,浏览器将进行猜测。有时它会弄错,你会看到奇怪的字符,而不是你所期望的。
答案 2 :(得分:0)
此代码适用于我:
"‘Some string here’".replace("‘","").replace("’","");
答案 3 :(得分:0)
为您的问题解决方案创建了fiddle
代码段:
var str = "‘Some string hereâ€";
str = str.replace("‘", "");
str = str.replace("â€", "");
alert(str);
答案 4 :(得分:0)
Test test1 = Test1.buildFromString(s);