我想从字符串中删除所有特殊字符(数字除外)。我能够做到这一点
var name = name.replace(/[^a-zA-Z ]/, "");
但它似乎正在删除第一个号码并留下所有其他号码。
例如:
name = "collection1234"; //=> collection234
或
name = "1234567"; //=> 234567
答案 0 :(得分:38)
使用全局标志:
var name = name.replace(/[^a-zA-Z ]/g, "");
^
如果您不想删除号码,请将其添加到班级中:
var name = name.replace(/[^a-zA-Z0-9 ]/g, "");
答案 1 :(得分:15)
要删除特殊字符,请尝试
var name = name.replace(/[!@#$%^&*]/g, "");
答案 2 :(得分:7)
如果你不介意将下划线作为允许的角色,你可以试试:
result = subject.replace(/\W+/g, "");
如果还必须排除下划线,那么
result = subject.replace(/[^A-Z0-9]+/ig, "");
(注意不区分大小写的标志)
答案 3 :(得分:3)
要删除符号,请使用标签[]
步骤:1
[]
步骤2:放置您要删除的符号,例如:@,例如[@]
[@]
步骤3:
var name = name.replace(/[@]/g, "");
就这样
var name="ggggggg@fffff"
var result = name.replace(/[@]/g, "");
console .log(result)
其他提示
要删除空格(将一个空格放到[] => []之类的方括号中)
[@ ]
它删除所有内容(使用除外)
[^place u dont want to remove]
例如:我删除除字母(小写和大写)之外的所有内容
[^a-zA-Z ]
var name="ggggg33333@#$%^&**I(((**gg@fffff"
var result = name.replace(/[^a-zA-Z]/g, "");
console .log(result)
答案 4 :(得分:0)
这应该也可以
text ='汽车?又大又*红色!'
newtext = re.sub('[^ a-z0-9]','',文本)
打印(新文本)
这辆车又大又红