使用JavaScript替换单引号(不是')

8

我有一个问题,需要将 ==> (撇号)替换为空格。我知道看起来很容易,但我的意思是编辑器不会像这样输入撇号 ==> ,而是像这样 ==> ',我找不到一种方法来替换它。

var newtext = old.replace(/'/g,"");

这里有一个例子http://jsfiddle.net/zYK9f/4/,在这个例子中,您可以在页面中输入',但无法在代码编辑器中输入。尝试了很多次,但没有结果。希望我能帮到您。

谢谢。

对不起,我是指撇号而不是分号。

6
我觉得那看起来像是一个撇号... - punkrockbuddyholly
只是提供信息(并且 WolframAlpha 也支持我的观点):前一个字符是右单引号,后一个是撇号。两者不同。 - Patrick Perini
FYI: "other apostrophe" 是“右单引号”:http://www.fileformat.info/info/unicode/char/2019/index.htm - Scott
@danyim:它们都只是字符,如果你的“编辑器”无法处理7位ASCII之外的任何内容,那么可能是时候换一个新的编辑器了。 - Matti Virkkunen
1
@MattiVirkkunen:当然可以,但是你的键盘上有这两个字符吗?我的键盘显然没有。 - Keith Thompson
显示剩余5条评论
3个回答

7

只需复制并粘贴该字符即可同时考虑到两者:

var newtext = old.replace(/'|’/g,"");

5
我不确定你需要什么...就像其他答案建议的那样,您可以使用。
var newtext = old.replace(/'|’/g," ");

然而,如果在您的编辑器中不允许使用字符',您可以使用Unicode等效字符:

var newtext = old.replace(/\u2019/g," ");

+1 提到 Unicode 字面量。然而,OP 想要用空格替换引号,而不是空字符串;另外,您提出的第二个替代方案存在语法错误(在 replace 的两个参数之间缺少逗号),并且与第一个方案不等价(正则表达式中缺少 ')。 - Giulio Piancastelli
我正在使用Dreamweaver,谢谢大家。我使用了/\u2019/而不是/',现在它可以工作了,谢谢大家。 - jq beginner

1
var old = "you’ll keep’’’ finding more and ''''more ways to use it.";
var newtext = old.replace(/’/g,"");
var newtext = newtext.replace(/'/g,"");
$("#text").html(newtext);

将同时去除两种类型的撇号。这是您想要的吗?


问题是 Dreamweaver 无法处理 ’ 这个字符,仅限于 ' 符号。我不知道它是否有盲点。 - jq beginner
尝试使用“’”。这是花式撇号的HTML代码。 - ACarter

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接