常用有如下
- 去左空格
- 去右空格
- 去左右空格
- js截取两个字符串之间的内容
- js截取某个字符串后面的内容
- 取出script标签中的内容
- 正则匹配年月 YY--MM--dd
- 手机号码验证
- 验证是否是中文
- 验证是否是英文
- 验证是否是数字
- 只能输入小数点、数字
- 去除某个标签
- 验证营业执照编码
去左空格
function ltrim(s){
return s.replace(/(^\s*)/g, "");
}
去右空格
function rtrim(s){
return s.replace(/(\s*$)/g, "");
}
去左右空格
function trim(s){
return s.replace(/(^\s*)|(\s*$)/g, "");
}
js截取两个字符串之间的内容
var str = "aaabbbcccdddeeefff";
str = str.match(/aaa(\S*)fff/)[1];
alert(str);//结果bbbcccdddeee
应用
image.match(/images\/(\S*)\/img/)[1]; //截取images/.../img之间的内容
注意:使用转义字符 \ 即可。如var reg=///;匹配一个正斜杠出现在正则中有特别含义的字符都需要\来转义,如:\ . * ^ & [ ] { } ? 等注意的是如果在[]字符集合里,很多字符都不需要转义。
js截取某个字符串前面的内容
var str = "aaabbbcccdddeeefff";
tr = str.match(/(\S*)fff/)[1];
alert(str);//结果aaabbbcccddd
js截取某个字符串后面的内容
var str = "aaabbbcccdddeeefff";
str = str.match(/aaa(\S*)/)[1];
alert(str);//结果bbbcccdddeeefff
let re = /aaa(\S*)/
new RegExp(re).exec(str)
取出script标签中的内容
arousePayment.replace(/<script.*?>([\s\S]+?)<\/script>/img,function(_,js){ //正则匹配出script中的内容
arousePayment = js
});
正则匹配年月 YY--MM--dd
/^(\d{2})(-|\/)(0?[1-9]|1[0-2])$/
手机号码验证
!(/^(13[0-9]|14[0-9]|15[0-9]|166|17[0-9]|18[0-9]|19[8|9])\d{8}$/).test(phone)
验证是否是中文
var pattern = new RegExp("[\u4E00-\u9FA5]+");
var str = "中文字符"
if(pattern.test(str)){
alert('该字符串是中文');
}
验证是否是英文
var pattern2 = new RegExp("[A-Za-z]+");
var str2 = "abcdefsgaaweg"
if(pattern2.test(str2)){
alert('该字符串是英文');
}
验证是否是数字
var pattern3 = new RegExp("[0-9]+");
var str3 = "234234"
if(pattern3.test(str3)){
alert('该字符串是数字');
}
只能输入小数点、数字
var reg = /^\d*\.{0,1}\d{0,1}$/;
if (!reg.test(val)) {
uni.showToast({
title:'只能输入数字或小数点',
icon:'none'
})
return 0;
}
去除某个标签
datas = datas.replace(/<script.*?>.*?<\/script>/gi, "");
验证营业执照编码
//验证营业执照
checkLicense(code){
var tip = "OK";
var pass= true;
if(code.length != 18){
tip = "社会信用代码长度错误!";
pass = false;
}
var reg = /^([159Y]{1})([1239]{1})([0-9]{6})([0-9ABCDEFGHJKLMNPQRTUWXY]{9})([0-9ABCDEFGHJKLMNPQRTUWXY]{1})$/;
if(!reg.test(code)){
tip = "社会信用代码校验错误!";
pass = false;
}
//不用I、O、S、V、Z
var str = '0123456789ABCDEFGHJKLMNPQRTUWXY';
var ws =[1,3,9,27,19,26,16,17,20,29,25,13,8,24,10,30,28];
var codes = new Array();
var sum = 0;
codes[0] = code.substr(0,code.length-1);
codes[1] = code.substr(code.length-1,code.length);
for(var i=0;i<codes[0].length;i++){
var Ancode = codes[0].charAt(i);
var Ancodevalue = str.indexOf(Ancode);
sum += Ancodevalue * ws[i];
}
var indexOfc18 = 31 - (sum % 31);
var c18 = str.charAt(indexOfc18);
if(c18 != codes[1]){
tip = "社会信用代码有误!";
pass = false;
}
return {'errCode':pass, 'errMsg':tip};
},