《精通正则表达式》读书笔记摘要: 第一章 入门(3)

一些例子

变量名:
程序设计语言中的变量名有一定的命名规则:只能由字母,数字及下划线组成,并且不能以数字开头。
[a-zA-Z_][a-zA-Z_0-9]* 这个表达式即可满足这样的需求,如果有长度限制,比如不能多于32个字符,可把*换成区间量词即可{0-31}, 为什么不是{0-32},因为前面已经有了一个非数字字符了。

引号内的字符串:
"[^"]*" 表达式两端匹配字符串两端的引号,字符组内除 " 的任何字符,数量不限。

美元金额:
首先看美元金额的一般写法:$6583 , $7.00  ,   $39234.89  , $0.01 等。第一个位置一定是美元符号$,后面由数字和小数点组成,并且是两位小数点,小数点前面至少有一个0到9的数字, 小数点后面的数字可有可无,当然连同小数点。
/$[0-9]+(/.[0-9]{0,2})?
这个表达式中第一个美元符号要用转义符/ ,否则就成了行结束标志了,显然不行。用了一个可选符?来匹配小数点及后面的数字,简洁而直接。
现在看似这个表达式应该可以胜任了,但是,它还不能匹配 $2,234.98,还得需要改造。
/$([0-9],?)+(/.[0-9]{0,2})? 这样一来匹配以逗号隔开的金额就没有问题了,但是美元金额还有另外一个写法:$.98,小于一元可省略前面的0。OK继续改造:/$(([0-9],?)+)?(/.[0-9]{0,2})? ,嗯,现在看起来应该比较完备了。

HTML网页地址:
静态网页地址的典型格式是:http://www.mysite.com/exmaple/inde.html (.htm)
可以看出该类字符串是由 http:// + 域名 + 目录名 + 文件名 +.html(htm) 组成的,再分析每个组成部分的规则。
http:// 可有可无。
域名只能由字母,数字,下划线,划线,点号组成。
目录名和文件名就比较复杂了,能包含的字符也很多样可以使用[-a-z0-9_:@&?=+,.!/~%$]* 来匹配。
(http://)?[-a-z0-9_:@&?=+,.!/~%$]*.html?

(待续)

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值