正则表达式

正则表达式主要是进行字符串的匹配的。它是一种文本模式,包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为“元字符”)。模式描述了在搜索文本时要匹配的一个或多个字符串。


正则表达式中的转义符号:
\s匹配空白字符,包括空格、换行、回车、Tab键
\S匹配非空白字符
\d匹配0-9之间的数
\D匹配(0-9)外的字符
\w匹配(0-9,a-z,A-Z)
\W匹配\w之外的字符
^表示匹配字符串的开始的位置
$表示匹配字符串的结束的位置
在正则表达式后加上i表示忽略大小写
加上g表示全局匹配


[]表示匹配[]之间的某一个字符
如:/^[12]$/ 表示匹配1,或2 ;只有字符串是1,或2时才匹配成功
/^[12]+$/表示匹配1,2,12,21,等1与2的任意组合

匹配转义字符本身,需在转义字符前加\,如:
/^[0]\\d[m]$/ 表示匹配”0\dm”

^写在正则表达式某个单元内部,表示反转字符,如:
/^[^0-9]$/ 表示匹配非0-9的字符

{m,n},表示出现的个数,至少为m,之多为n
如/^\d{3,5}$/,表示匹配至少三个0-9之间的数,至多5个0-9之间的数

{m}匹配m次
如/^\d{3}$/,表示正好3个数字

{m,}表示至少匹配m次
如/^\d{3,}$/,表示至少3个数字

+表示匹配多次(至少一次) 等价于{1,}
?表示匹配0次或1次 等价于{0,1}
. 表示匹配除“\n”之外的任何单个字符。若要匹配包括“\n”在内的任意字符,请使用诸如“[\s\S]”之类的模式。
* 表示匹配任意次
如/^\d*$/表示匹配空(匹配)或字符串中全为数字


以后会详细总结一下正则表达式的写法。下面,列举几个项目中遇到的正则表达式:

/^(-)?((0(\.\d{1,3})?)|([1-9]\d{0,}(\.\d{1,3})?))$/;//任意最多保留三位的小数(-0合法)
/^(.){1,}$/;//非空
/^[1-9]\d{4,10}$/;//qq号码,最少5位,最多暂定为11位
/^((0(\.\d{1,2})?)|1)$/;//0-1之间的两位小数,包括0,1(当为1时,不能带小数点)
/^\w+@[0-9a-z]+\.[a-z]+$/i;//EMail(忽略大小写)

此处,仅仅列举正则表达式在js中的常用写法(将正则表达式写到两个’/’之间(这种写法是Perl中的写法)),关于正则表达式的语法及使用方法,仅列举简单例子。未讲到或涉及的部分,还请参照专业网站。(以上若有不当或错误之处,还请指正。仅用作交流,转载请标明出处)。
参考:
https://msdn.microsoft.com/zh-cn/library/ae5bf541(VS.80).aspx

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值