正则表达式-入门

1.  正则表达式写法

/表达式内容/  正则表达式以斜杠开始和结束

2.  正则表达式组成部分--元字符

元字符,对文本具有高度的描述性

这里介绍一下 “模式” 的概念,模式就是用来描述文本,可以理解为一个或几个元字符可组成模式。在下面的例子中,你会理解的。

介绍几个常用的元字符,就足够创建实用的正则表达式了。

.       匹配任何一个字符,换行符(newline)除外

\d     匹配任何一个数字字符

\w   匹配任何一个字母数字(字母或数字)字符

\s     匹配空格(space,tab, 换行符, return/enter)

^      字符串需以模式起始,即在模式之前不能有其他字符

$      字符串需以模式结束,记载模式之后不能有其他字符

    

例1,"F", "6", "#" ," ",这个几个字符串分别可有以下正则表达式来识别

/./     --> "F", "6", "#" ," "

/\d/   --> "6"

/^\d/   --> "6"

/\d$/   --> "6"

/^\d$/   --> "6"

/\w/  --> "F", "6"

/\s/  -->  " "

 

例2,不只一个字符的字符串,例如,"7diff12", "parse9", "9876"

/^\d/  -->  "7diff12", "9876"

/\d\d$/   -->  "7diff12","9876"

/\d$/      -->  "7diff12", "parse9", "9876"

/^parse/ -->  "parse9"

/\d\d\d/  -->  "9876"

/\d\d\d\d/  --> "9876"

 

设计一个匹配手机号码的正则表达式,手机号格式为 ###-####-####

/^\d\d\d-\d\d\d\d-\d\d\d\d$/

 

3.  正则表达式的组成部分--限定符

限定符 是用来修饰子模式的

一些常用的限定符

*      限定符前的子模式必须出现 0或多次

+       限定符前的子模式必须出现 1或多次

?      限定符前的子模式必须出现 0或1次

{n}     限定符前的子模式必须出现 恰好n次

{min,max} 限定字符前的子模式必须出现至少min次,但不可多于max次

()        集合字符或 /和元字符,成为子模式(与数学表达式中的括号作用类似)

|         指定可供选择的匹配模式(这个,或那个,或...)

[]        从集合中匹配可选字符

注意:除了元字符和限定符外,其他字符都是照样匹配(例如, /^parse/ -->  "parse9")

例2, 可以这样写

/\d{2}$/   -->  "7diff12","9876"

/\d{3}/  -->  "9876"

/\d{4}/  --> "9876"

 

例3

/.+/       -->   匹配非空字符串,即任何字符需要出现一次或多次

/(blue)? ?sky/ --> 匹配 "blue sky" or "sky"

/^\w{6,12}$/ --> 可以匹配 由6~12个字母或数字组成的密码

 

写一下邮箱的正则表达式

/^[\w\.-_\+]+@[\w-]+(\.\w{2,4})+$/

 email@prefix.suffix  邮箱格式一般为这样,email中可能包含"-" "." "_" "+". prefix中可能包含"-", .suffix一般为2~4个字母数字.还可能出现 @sina.com.cn这样的情形,所以 .suffix可能不止一个.
 
注意:正则表达式出现元字符或限定符需要照样匹配的,需要加反斜杠 "\",例如 "$" --> \$
 
 

转载于:https://www.cnblogs.com/albert-zhao/p/3520551.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值