Cir*_*vis -1 javascript regex jquery
我从elements name属性创建一个ID,并且它们有一些不允许的字符,我想创建一个函数,如果它们不在列表中,则替换charcters _.我试图谷歌它,但我发现的只是regexp示例,其中不是我想要的地方.
这就是我所做的:
/([^A-Za-z0-9[\]{}_-])\s?/g
Run Code Online (Sandbox Code Playgroud)
但是这并不排除]和[,也许一些其他字符了.
我怎样才能让它替换所有字符_未[A-Za-z0-9],-,_,.,:?
EDITED
..如果第一个字符不是数字,则将其设为一个.
如果有人知道更好的方法,请分享.
OJa*_*Jay 11
您是否尝试过非单词字符(即\W)匹配的所有非A-Za-z0-9_(这也意味着空格)
所以
/\W/g
Run Code Online (Sandbox Code Playgroud)
在javascript类似的东西
var id = "What ever your id is [] {} - &";
var cleanedId = id.replace(/\W/g,'_'); //cleanedId is "What_ever_your_id_is__________"
Run Code Online (Sandbox Code Playgroud)
假设你用一个下划线替换它们当然
例如正则表达式在这里
您应该使用 Replace() 函数,如下所示:
var temp = "some id to validate";
var i = "";
if(!$.isNumeric(temp[0])){
i = parseInt(Math.random()*10);
}
temp = i+temp.replace(/([^A-Za-z0-9[\]{}_.:-])\s?/g, '');
//here the id is a valid id
Run Code Online (Sandbox Code Playgroud)
参见jsFiddle