Javascript 使用正则表达式替换字符串中间的单引号
有一个字符串:Javascript 使用正则表达式替换字符串中间的单引号,javascript,.net,regex,string,Javascript,.net,Regex,String,有一个字符串: stringName= "'john's example'" 需要做一个字符串。替换< /代码>删除字符串中间的单个引号,而不是第一个和最后一个,否则将破坏我的JavaScript 尝试过 String Netry.Read(“//”、“/”、“”、“代码”>只替换字符串中间的单引号,但不工作 非常感谢您的帮助!:) 在剥离第一个和最后一个字符后,使用拆分,连接 var f1 = (str) => str.charAt(0) + str.split("'").join(
stringName= "'john's example'"
需要做一个<代码>字符串。替换< /代码>删除字符串中间的单个引号,而不是第一个和最后一个,否则将破坏我的JavaScript
尝试过<代码> String Netry.Read(“//”、“/”、“”、“代码”>只替换字符串中间的单引号,但不工作
非常感谢您的帮助!:) 在剥离第一个和最后一个字符后,使用
拆分
,连接
var f1 = (str) => str.charAt(0) + str.split("'").join("") + str.slice(-1);
f1( "'john's exa''mp'le'" ); //'johns example'
剥离第一个和最后一个字符后,使用
split
,join
var f1 = (str) => str.charAt(0) + str.split("'").join("") + str.slice(-1);
f1( "'john's exa''mp'le'" ); //'johns example'
第一件事是你没有做正则表达式替换,你正在替换一个看起来像
/./
的字符串(因为第一个参数中有“
)。第二件事,你正在做的正则表达式只会寻找一个字符(
)然后是一个单引号,然后是另一个字符。您可能要做的是类似于stringName.replace(/(.+)”(.+)/,“$1$2”)
的事情首先是您没有执行正则表达式替换,而是替换一个看起来像/./
的字符串(因为第一个参数中有“
)。其次,您正在执行的正则表达式只需要查找单个字符(
),然后是单个引号,然后是另一个字符。您可能需要执行类似于stringName.replace(/(.+)'(.+)/,“$1$2”)
使用(^'|'$)|'
作为匹配的正则表达式:
stringName=“'john's e'xam'ple'”;
console.log(
stringName.replace(/(^'|'$)|'/g,$1'))
);代码>使用(^'|'$)|'
作为匹配的正则表达式:
stringName=“'john's e'xam'ple'”;
console.log(
stringName.replace(/(^'|'$)|'/g,$1'))
);
约翰的考试怎么样?@revo没有想到,现在就修好了。谢谢你指出。约翰的考试怎么样?@revo没有想到,现在就修好了。谢谢你指出这一点。我会说用revo的答案来代替这个我会说用revo的答案代替这个谢谢你的答案!:)快速提问,我是在.net中使用的,字符串仅用一个引号固定,您已将引号增加了一倍。。有什么办法绕过这件事吗?用spaceHi来代替那一句话,我没听懂。请详细说明这个问题。您好,很抱歉我在.net中这么做,所以我的字符串是:dim example as string=“'john's example'”dim regex as string=example.Replace((^'|'$)|',“”)Response.Write(regex)这行不行吗?该字符串是固定在一个单一的报价在中间,不能更改,非常感谢您的帮助,谢谢您的答案!快速提问,我是在.net中使用的,字符串仅用一个引号固定,您已将引号增加了一倍。。有什么办法绕过这件事吗?用spaceHi来代替那一句话,我没听懂。请详细说明这个问题。您好,很抱歉我在.net中这么做,所以我的字符串是:dim example as string=“'john's example'”dim regex as string=example.Replace((^'|'$)|',“”)Response.Write(regex)这行不行吗?该字符串是固定在一个单一的报价在中间,不能更改,非常感谢您的帮助。