Javascript 检查字符串中的特殊字符
我想检查字符串是否包含特殊字符,如!@$%^&*,/\'“;:?如果字符串至少包含其中一个字符,则返回true 我尝试使用以下正则表达式脚本:Javascript 检查字符串中的特殊字符,javascript,regex,string,Javascript,Regex,String,我想检查字符串是否包含特殊字符,如!@$%^&*,/\'“;:?如果字符串至少包含其中一个字符,则返回true 我尝试使用以下正则表达式脚本: var format = /^[!@#$%^&*()_+\-=\[\]{};':"\\|,.<>\/?]*$/; if( string.match(format) ){ return true; }else{ return false; } var format=/^[!@\\$%^&*()\+\-=\[\]{};:“\\
var format = /^[!@#$%^&*()_+\-=\[\]{};':"\\|,.<>\/?]*$/;
if( string.match(format) ){
return true;
}else{
return false;
}
var format=/^[!@\\$%^&*()\+\-=\[\]{};:“\\\\\,.\/?]*$/;
if(string.match(格式)){
返回true;
}否则{
返回false;
}
如果字符串仅包含特殊字符,则返回true,但如果字符串包含字母数字字符(!example1、.example2)等其他字符,则返回false。
var specialChars=“@!\$%^&*()\+[]{}:;\”\”\,./~`-=”;
var checkForSpecialChar=函数(字符串){
对于(i=0;i-1){
返回真值
}
}
返回false;
}
var str=“YourText”;
如果(检查特殊字符(str)){
警报(“无效”);
}否则{
警报(“有效”);
}
var specialChars=“@!#$%^&*()_+[]{}?:;|'\"\\,./~`-=";
var checkForSpecialChar=函数(字符串){
对于(i=0;i-1){
返回真值
}
}
返回false;
}
var str=“YourText”;
如果(检查特殊字符(str)){
警报(“无效”);
}否则{
警报(“有效”);
}
我建议使用RegExp.test()
函数检查模式匹配,唯一需要更改的是删除regex中的起始/结束线锚(并且*
量词也是多余的):
var格式=/[`!@\\$%^&*()\+\-=\[\]{};:“\\\\\,.\/?~]/;
// ^ ^
document.write(format.test)(“My@string-(部分%text)“)+”
“;
document.write(format.test(“带空格的字符串”)+“
”;
document.write(format.test(“MyStringContainingNoSpecialChars”);
我建议使用RegExp.test()
函数来检查模式匹配,唯一需要更改的是删除regex中的起始/结束线锚(并且*
量词也是多余的):
var格式=/[`!@\\$%^&*()\+\-=\[\]{};:“\\\\\,.\/?~]/;
// ^ ^
document.write(format.test)(“My@string-(部分%text)“)+”
“;
document.write(format.test(“带空格的字符串”)+“
”;
document.write(format.test(“MyStringContainingNoSpecialChars”)
您的regexp使用^
和$
,因此它尝试匹配整个字符串。如果只需要一个布尔值作为结果,请使用test
而不是match
var format = /[!@#$%^&*()_+\-=\[\]{};':"\\|,.<>\/?]+/;
if(format.test(string)){
return true;
} else {
return false;
}
var格式=/[!@\\$%^&*()\+\-=\[\]{};:“\\\\\,.\/?]+/;
if(格式测试(字符串)){
返回true;
}否则{
返回false;
}
您的regexp使用^
和$
,因此它尝试匹配整个字符串。如果您只需要一个布尔值作为结果,请使用test
而不是match
var format = /[!@#$%^&*()_+\-=\[\]{};':"\\|,.<>\/?]+/;
if(format.test(string)){
return true;
} else {
return false;
}
var格式=/[!@\\$%^&*()\+\-=\[\]{};:“\\\\\,.\/?]+/;
if(格式测试(字符串)){
返回true;
}否则{
返回false;
}
从正则表达式中删除字符^
(字符串开头)和$
(字符串结尾)
var format = /[!@#$%^&*()_+\-=\[\]{};':"\\|,.<>\/?]/;
var格式=/[!@\\$%^&*()\+\-=\[\]{};:“\\\\\,.\/?]”;
从正则表达式中删除字符^
(字符串开头)和$
(字符串结尾)
var format = /[!@#$%^&*()_+\-=\[\]{};':"\\|,.<>\/?]/;
var格式=/[!@\\$%^&*()\+\-=\[\]{};:“\\\\\,.\/?]”;
相反,负匹配字母数字不是更容易吗
return string.match(/^[^a-zA-Z0-9]+$/) ? true : false;
相反,负匹配字母数字不是更容易吗
return string.match(/^[^a-zA-Z0-9]+$/) ? true : false;
您可以尝试以下方法:
regex=[\W\ux]
它肯定会对您有所帮助。您可以尝试以下方法:
regex=[\W\ux]
它肯定会对您有所帮助。检查字符串是否至少包含一个: 供参考: ASCII表中的特殊字符范围为:
- 空间到/
- :至@
- [致`
- {to~
/[-/:-@[-`{-~]/.test(string)检查字符串是否至少包含一个: 供参考: ASCII表中的特殊字符范围为:
- 空间到/
- :至@
- [致`
- {to~
var格式=/[`!@\\$%^&*()\+\-=\[\]{};:“\\\\\,.\/?~]/;
// ^ ^
document.write(format.test(“My@string with(some%text)”)+“
”;
document.write(format.test(“带空格的字符串”)+“
”;
document.write(format.test(“MyStringContainingNoSpecialChars”);
var格式=/[`!@\\$%^&*()\+\-=\[\]{};:“\\\\\,.\/?~]/;
// ^ ^
document.write(format.test(“My@string with(some%text)”)+“
”;
document.write(format.test(“带空格的字符串”)+“
”;
document.write(format.test(“我的StringContainingNoSpecialChars”);
我刚刚做了这个
if(string.match(/\W/)){
return true;//至少包含一个特殊字符或空格
}否则{
返回false;
}
我刚刚做了这个
if(string.match(/\W/)){
return true;//至少包含一个特殊字符或空格
}否则{
返回false;
}
那么你想让我们为你写一个正则表达式?去掉锚和量词。为了更简洁,你可以使用这样的三元运算符:return str.match(format)对:错;
@Takendarkk,就是这个样子吗?不,我想知道我做了什么wrong@Teemu对不起,如果我很粗鲁,但我想每个人都能明白我的问题是关于什么的,因为我在很短的时间内收到了一些很好的答案。仅仅因为我没有以a结束我的问题?标记并不意味着没有良好的结构。啊…文本b下面代码描述的是代码是如何工作的,而不是你的实际情况?如果是这样,那么我真的很抱歉,这是