正则表达式



常用正则:

邮箱:^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$

允许汉字作为名称前缀:^[A-Za-z0-9\u4e00-\u9fa5]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$

手机号:myreg=/^[1][3,4,5,7,8][0-9]{9}$/; 

其他:https://zhidao.baidu.com/question/569239716.html

详情>>

                                                                第一节 正则表达式Regular Express

正则表达式工具:http://regexper.com

常用:

\b    单词边界;

.     任意字符;

\    转义;

+   连接;

()   分组;

$n    提取第n组;

\d 数字; \d{4}  四个数字;

^$       开头结尾

 

第二节 RegExp对象

Javascript通过内置对象RegExp支持正则表达式

实例化方式:

1.字面量:/pattern/attributes

2.构造函数:newRegExp(pattern, attributes);

参数 attributes 是一个可选的字符串,包含属性 "g"、"i" 和 "m",分别用于指定全局匹配(默认匹配第一个)、区分大小写的匹配、多行匹配。

实例化例子:

varreg=/\bis\b/g;

Varreg=new RegExp(‘/\bis\b’,’g’);

 

1、RegExg对象属性

global RegExp 对象是否具有标志 g

ignoreCase    RegExp 对象是否具有标志 i

lastIndex 一个整数,标示开始下一次匹配的字符位置

multiline  RegExp 对象是否具有标志m

source 正则表达式的源文本

 

2、RegExp 对象方法

compile    编译正则表达式

exec检索字符串中指定的值。返回找到的值,并确定其位置

test    检索字符串中指定的值。返回 true 或 false


3、支持正则表达式的 String 对象的方法

search       检索与正则表达式相匹配的值。

match       找到一个或多个正则表达式的匹配。

replace     替换与正则表达式匹配的子串。

split          把字符串分割为字符串数组。

 

 

第三节 字符类型

方括号     用于查找某个范围内的字符

[abc]         查找方括号之间的任何字符

[^abc]       查找任何不在方括号之间的字符

[0-9]         查找任何从 0 至 9 的数字

[a-z]          查找任何从小写 a 到小写 z 的字符

[A-Z]         查找任何从大写 A 到大写 Z 的字符

[A-z]         查找任何从大写 A 到小写 z 的字符

[adgk]       查找给定集合内的任何字符

[^adgk]    查找给定集合外的任何字符

(red|blue|green)          查找任何指定的选项

 

元字符(Metacharacter):拥有特殊含义的字符

.     查找单个字符,除了换行和行结束符。

\w 查找单词字符。

\W 查找非单词字符。

\d  查找数字。

\D  查找非数字字符。

\s   查找空白字符。

\S  查找非空白字符。

\b  匹配单词边界。

\B  匹配非单词边界。

\0  查找 NUL 字符。

\n  查找换行符。

\f   查找换页符。

\r   查找回车符。

\t   查找制表符。

\v  查找垂直制表符。

\xxx     查找以八进制数 xxx 规定的字符。

\xdd    查找以十六进制数 dd 规定的字符。

\uxxxx 查找以十六进制数 xxxx 规定的 Unicode 字符。

 

量词

n+ 匹配任何包含至少一个 n 的字符串。

n* 匹配任何包含零个或多个 n 的字符串。

n?  匹配任何包含零个或一个 n 的字符串。

n{X}   匹配包含 X 个 n 的序列的字符串。

n{X,Y}     匹配包含 X 至 Y 个 n 的序列的字符串。

 

贪婪模式:尽可能多的匹配(默认);

非贪婪模式:尽可能少的匹配,一旦成功就不再继续尝试;在两次后加上?即可非贪婪模式。


n{X,}  匹配包含至少 X 个 n 的序列的字符串。

n$  匹配任何结尾为 n 的字符串。

^n 匹配任何开头为 n 的字符串。

?=n     匹配任何其后紧接指定字符串 n 的字符串。

?!n 匹配任何其后没有紧接指定字符串 n 的字符串。

 

 


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值