零全零美(www.zzgwt.com)
生活中的很多事情,并不像If...Else那么简单!
posts - 96,comments - 52,trackbacks - 0
       量词用于指定特定模式出现的次数,这个次数可以是硬性的,如某个字符应该出现4次,如果没有出现四次就是错的,也可以是软性的,如某个字符应该出现0至4次,意思是该字符可以出现,也可以不出现,可以出现一次,两次,也可以出现三次,四次。

1正则元字符                            描述
2-----------------------------------------------------------------------
3  ?                                                可以出现0次或1次,但至多出现1次
4  *                                                可以出现任意次,也可以不出现
5  +                                                出现1次或多次,但至少出现1次
6  {n}                                            一定出现n次
7  {n,m}                                        至少出现n次,但至多不能超过m次
8  {n,}                                        可以出现任意次,但至少出现n次

例如:我们要去匹配以下字符串:
<input type=text/>
<input type=button />
<input type=password          />
可以用下面的表达式:
1<input +type *= *(button|text|password){1} */>

该表达的意思是:
     以"<"开始紧接着是i->n->p->u->t->至少一个空格->t->y->p->e->任意个空格->=->任意个空格->一个button或者一个text或者一个password
->任意个空格->/最后以">"结束
posted on 2008-11-29 14:13 零全零美 阅读(1724) 评论(3)  编辑  收藏 所属分类: 正则表达式

FeedBack:
# re: 正则表达式学习笔记(3) 简单量词
2008-12-01 10:22 | 杨爱友
继续写,加油!  回复  更多评论
  
# re: 正则表达式学习笔记(3) 简单量词
2008-12-01 17:04 | 刘凯毅
顺便加补充些(期待4)
1>>使用 * 是没有特殊要求请尽量是用 *? 这种懒散加载模式
比如:
'123456789123456789'.replace(/2.*4/, '')
结果是多少知道吗?
156789
这里大家要明白 是全匹配,也就是说 开始到全部全部替换掉了。(很多时候我们并不是这个想法)

请使用 *?
'123456789123456789'.replace(/2.*?4/, '')
156789123456789


2>>
使用空格匹配是请使用 \s 来表示空格 ,要不正则突然来个 *你知道前面是个空格吗?呵呵 规范哦

现在 我使用 python 和 linux shell 和 javascript 的正则 ,他们因为特定区域原因 都不是很兼容,比如 \/ \\/ \\\\ 这些文件路径匹配问题就很是头疼 。大家开始使用正则能多规范及规范下吧


  回复  更多评论
  
# re: 正则表达式学习笔记(3) 简单量词
2008-12-01 18:21 | 昨夜流星
学习中,多谢楼上楼下各位的关注!  回复  更多评论
  

只有注册用户登录后才能发表评论。


网站导航: