会挽雕弓如满月,西北望,射天狼。 注册 | 登陆

Java学习日记:正则表达式

很早就看到正则表达式了,但是一直没有机会学,这回Java也有正则表达式的API,正好可以学一学。
正则表达式验证字符串的合法性的效率真是那个高啊,呵呵。
通过学习,参考了网上的一些做法,写出了一个自己认为比较完美的email正则表达式(写为一行):

^[a-zA-Z0-9]+((\.|_|-)[a-zA-Z0-9]+)*@
[a-zA-Z0-9]+((\.|-)[a-zA-Z0-9]+)*\.[a-zA-Z]{2,4}$


自我认为:
1.使用[a-zA-Z0-9]而不是使用\w,因为\w包含了“_”,虽然它也是邮箱地址的合法的部分,但是邮箱地址一般不让这个符号做为开头和结尾。
2.多级子域名支持,且限制域名后缀为2-4个字符(如cn/com/info)

3.没有对邮箱长度进行限制,如果需要限制可以添加{min,max}到相应位置。

以上正则表达式仅为自己对邮箱地址的看法,没有仔细查阅相关权威机构定义的合法的邮箱名和域名。
以上正则表达式仅为自己学习所做,欢迎参考,欢迎批评指正!

Tags: 编程, Java

« 上一篇 | 下一篇 »

只显示5条记录相关文章

Usereg Tunet for Android (浏览: 554, 评论: 0)
可能是jQuery1.3.2的一个小bug (浏览: 2664, 评论: 0)
扫雷对战版 (浏览: 13875, 评论: 1)
一个用Qt写的多线程聊天室软件 (浏览: 5767, 评论: 3)
C/C++利用CPU时钟计数器精确计时 (浏览: 4120, 评论: 0)

发表评论

评论内容 (必填):