正则判断url,input只能输入中英文、数字、下划线等

963 阅读1分钟

 1、判断是否为正规url

function IsURL(strUrl) {
    var regular = /^\b(((https?|ftp):\/\/)?[-a-z0-9]+(\.[-a-z0-9]+)*\.(?:com|edu|gov|int|mil|net|org|biz|info|name|museum|asia|coop|aero|[a-z][a-z]|((25[0-5])|(2[0-4]\d)|(1\d\d)|([1-9]\d)|\d))\b(\/[-a-z0-9_:\@&?=+,.!\/~%\$]*)?)$/i
    if (regular.test(strUrl)) {
        return true;
    } else {
        return false;
    }
}

2、判断url是否以https http ftp开头,以js|html|css|jpg|jpeg|png结尾 ,并不区别大小写的

var reg = /^(https|http|ftp):\/\/[^\/]+\/.*\.(js|html|css|jpg|jpeg|png)$/i;
var reg2 = /^(https|http|ftp):\/\/.+\.(js|html|css|jpg|jpeg|png)$/;
if (reg.test(value)) {
   return true;
} else {
    return false;
}

3、去掉字符串前后空格。1个字符串中间有空格不管。

let data = '   ab cd   ';
data.replace(/(^\s*)|(\s*$)/g, '')
console.log(data)  // ab cd

4、判断input里输入的是否带有 非数字、非英文逗号,如果有,显示出报错信息。(elementui)

1种方法   
 let reg = new RegExp('[^\\d,]+');
 if (reg.test(value)) { //在正则的中括号里加了^,就是反转的意思.
    callback(new Error('只能输入数字和英文逗号。'));
 }

第2种方法

let reg = new RegExp(/^[\d,]*$/,'g');
if (!reg.test(value)) { //要加叹号哦。   
    callback(new Error('只能输入数字和英文逗号。'));
}
第3种方法
let reg = /^[\d,]+$/;if (!reg.test(value)) { //要加叹号哦。
   callback(new Error('只能输入数字和英文逗号。'));
}

5、只能输入英文及英文字符

let regExEnglish = /^[A-Za-z0-9\s\`\~\!\#\$\%\^\&\*\(\)\_\[\]{\}\\\|\;\'\'\:\"\"\,\.\/\<\>\?]+$/;

6、判断文件名是否包含特殊字符,返回true就是包含

function containSpecial(str) {
let containSpecial = RegExp(/[(\ )(\~)(\!)(\@)(\#)(\$)(\%)(\^)(\&)(\*)(\()(\))(\-)(\_)(\+)(\=)(\[)(\])(\{)(\})(\|)(\\)(\;)(\:)(\')(\")(\,)(\.)(\/)(\<)(\>)(\?)(\)]+/);
return ( containSpecial.test(str) );
};

7、只能输入中英文、数字、下划线

let reg = new RegExp(/^[a-zA-Z0-9_\u4e00-\u9fa5]+$/,'g');
if (!reg.test(data)) {
   callback(new Error('格式错误'));
}

8、只能输入数字、字母、下划线

let reg = new RegExp(/^[a-zA-Z0-9_]+$/,'g');
if (!reg.test(data)) {
  callback(new Error('格式错误'));
}