javascript - 如何替换字符串中的所有汉字?

标签 javascript replace

我试过下面的代码

str = 'Arc's 弧'
str.replace(/[^a-z\d\s]+/gi,'');

结果展示

Arc039s

预期结果

Arc's

代码有什么问题,这是删除汉字(包括标点符号)的正确方法吗?

提前致谢。

最佳答案

检查这个

var  str = "Arc's 弧"
alert (str);
// by your regex
alert (str.replace(/[^a-z\d\s]+/gi,''));
// by new regex which removes non-ascii characters
alert(str.replace(/[^\x00-\x7F]/g, ""));

str.replace(/[^a-z\d\s]+/gi,'') 将删除汉字,但它也会删除 ' 所以你的新字符串将是 Arcs 但通过 str.replace(/[^\x00-\x7F]/g, "") 正则表达式它将删除非 ascii 字符和新的字符串将是 Arc 的

http://jsfiddle.net/yjcL5/104/

关于javascript - 如何替换字符串中的所有汉字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45911648/

相关文章:

javascript - React 状态更新时动态更改获取请求 url

r - 如何用数千和数百万替换 "k"和 "m"?

javascript - 根据对象中的键值条目用值替换字符串中的键

java - Hangman Java - 替换下划线

javascript - 如何使用 jQuery Grep 过滤极度嵌套的 JSON

javascript - 立即获取第一个子元素

javascript - 如何仅在菜单中对父项使用 PreventDefault() ?

javascript - 获取 AngularJS 指令中的模板元素

mysql - 如何替换mysql表中列的文本?

c# - 你能构造一个正则表达式来用下划线替换不需要的字符吗?