正则表达式的常用功能
1、测试字符串的模式
2、查找子字符串
3、字符串替换
正则表达式对象:RegExp
新建正则表达式对象的两种方式:
(1).new RegExp(pattern, mode);
参数说明:
pattern 模式说明,如 “*name”
mode包含三个标志符:g(全文查找),i(忽略大小写),m(多行查找)
(2) var reg = /pattern/ig
常用功能
1、测试字符串模式
reg.test(str)
测试str是否符合pattern表达式模式
2、查找子字符串
reg.exec(str)
返回查找子字符串的信息,位置,子串内容
3、字符串替换
str.replace(reg, “new str”);
模式匹配
基本模式编写规则可参考:
W3school RegExp
反向引用\1 , 正向预查?= ( ?! ), 不匹配( ?: ), 括号作用:
更全面的正则
[code"js"]var reg = /test$/ig;
reg.test(“aaatest”); // true
reg.test(“aaatestbbb”); //false
reg = /^test/ig;
reg.test(“aaatest”); // false
reg.test(“testbbb”); // true
字符串查找
reg.exec(str)
字符串替换
str replace的用法
replace(reg, str/function);
reg:正则表达式
str:匹配成功后匹配串被替换成str字符串
function:参数为匹配串,其返回值替换匹配串
示例:你好#16#,很高兴见到你,欢迎预订#16#产品,注册#16#会员,还可获得#32#奖励。
将#.*#中的内容替换成#16char1#, #16char2#……
参考:
Java正则表达式 (收藏)
更全面的正则 反向引用\1 , 正向预查?= ( ?! ), 不匹配( ?: ), 括号作用
实践:
1.邮件
规则:前面只能由英文字母或者数字(至少一个),然后加@符号,然后加字符,然后加点号,然后加至少两个字符。
/^[\w-]+(\.[\w]+)@[\w]+(\.[\w]+)+$/
2.身份证
规则:15位或者18位数字,若为18位,末位可以是X
3.数字
规则:非负整数,负整数,正整数
4.手机号
规则:11位
5.电话号码:
规则:由区号(3位或者4位的整数)电话号码(7位到8位的数字)组成