巩固javaweb的第二十七天
巩固内容
正则表达式:
5. 指定字符串的开始和结尾 正则表达式中字符串的开始和结束符如表 2.6 所示。 表 2.6 开 始 和 结 尾 字符 作 用 ^ 指定以某个字符串开始 $ 指定以某个字符串结尾 ^和$ 表示精确匹配某个字符串 示例: ^zhang:匹配以“zhang”开头的任意字符串,如“zhangsan”。 cn$:匹配以“cn”结束的任意字符串,如“sina.com.cn”。 ^[a-z]$:匹配只包含 a~z 之间任意一个字符的字符串,如“a”。 注意:如果一个模式不包括^和$,那么它与任何包含该模式的字符串匹配。 思考:^[a-z]和[a-z]$分别匹配什么样的字符串?
6. 分支 正则表达式中表示分支的字符如表 2.7 所示。 表 2.7 分 支 字符 作 用 | 表示匹配多个模式串中的任意一个 第 2 章 输 入 45 示例: com|edu|net:匹配 com、edu 或 net。
7. 匹配特殊字符 在匹配特殊字符的时候需要用到转义字符,如表 2.8 所示。
表 2.8 特 殊 字 符 字符 作 用 \ 用来转义特殊字符 示例: \\:匹配一个反斜杠。 \.:匹配一个圆点。
下面举例说明一些常见用法: ^[a-zA-Z][a-zA-Z0-9_]*$:匹配以字母开头,由字母、数字和下划线组成的字符串,如 “abc_123”。
^[a-zA-Z0-9]{6,}$:匹配由字母和数字组成、长度不少于 6 位的字符串,如“123456”。
^[0-9]{4}-[0-9]{2}-[0-9]{2}$:匹配格式为“xxxx-xx-xx”的字符串,要求 x 只能是数字。 常用于匹配日期,如“2007-05-01”。
^[a-zA-Z][a-zA-Z0-9_\-]*@([a-zA-Z0-9\-]+\.)+[a-z]{2,3}$:常用于匹配 E-mail。要求@符 号前面是以字母开头,由字母、数字、下划线或减号组成的字符串;
@符号后面的域名可以 包含多个字符串,每个字符串由字母、数字或减号组成;
最后一级域名只能包含 2 个或 3 个字母(例如 cn、com 等)。
^0[0-9]{2,3}-[0-9]{7,8}$:常用于匹配电话号码。
要求区号由 0 开始,包含 3 到 4 位数 字,区号和电话号码之间用减号分隔,电话号码由 7 位或者 8 位数字组成。
下面的例子展示了如何在 JavaScript 中使用正则表达式,其功能是对电话号码格式进行 验证:
function isPhone(str) { if(str.match("^0[0-9]{2,3}-[0-9]{7,8}$")) return true; else return false; }