只保留字母和数字。
--I have a dog!!!
应该会产生I have a dog
I have a dog.
应该会产生I have a dog
答案 0 :(得分:2)
尝试替换此正则表达式:
/^[^a-z\d]*|[^a-z\d]*$/gi
答案 1 :(得分:1)
s = "--I have a dog!!!"
s.replace(/^[^a-zA-Z\d]*(.*?)([^a-zA-Z\d])*$/, "$1")
请注意,这将完全您要求的内容。它将从字符串的开头和结尾删除非字母数字字符 only 。不会删除字符串中间的所有非字母和非数字。
答案 2 :(得分:0)
只需使用正则表达式并替换
'--I have a dog!!!'.replace(/[^a-zA-Z 0-9]*/g,''); // "I have a dog"
这将从字符串的每个位置删除除数字,字母和空格之外的任何其他字符。
如果您只想从开头和结尾明确删除,那么您需要这样的内容:
'--I have !!! a dog!!!'.replace(/^[^a-zA-Z 0-9]*|[^a-zA-Z 0-9]*$/g,''); // "I have !!! a dog"
在regular-expressions.info了解更多正则表达式,也有JavaScript示例。
答案 3 :(得分:0)
试试这个:
var x = '--I have a dog!!!';
x = x.replace(/[^0-9A-Za-z\s]/g, '');
// results in "I have a dog"
答案 4 :(得分:0)
使用Regex解决此问题:
var s = '--I have a dog!!!';
s = s.replace(/^[^a-z\d]*|[^a-z\d]*$/gi, '');