巧用正则表达式
2016-05-05 17:18
176 查看
前言
现在在做人力资源管理项目,用户提出新的需求,需要对手机号加以判断。于是,大家都懂得,开始了探索的道路。内容
正则表达式
定义
百度百科:正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的而一些特定的字符、及这些特定的字符的组合,组成一个“规则字符串”这个“规则字符串”用来表达对字符串的一种过滤逻辑。
结构
一些普通字符和一些元字符(metacharacters)组成。普通字符包括大小写的字符和数字,而元字符则具有特殊含义。这里推荐大家还是看看百度百科上面关于百度百科的说法。正则表达式常用几类
功能 | 正则表达式 |
验证汉字 | ^[\u4e00-\u9fa5]{0,}$ |
验证英文和数字 | ^.[A-Za-z0-9]+$ |
验证输入为大(小)写应为字符 | ^.[A-Z]+$" '小写的为 ^.[a-z]+$ |
验证只输入N个字符 | ^.{n}$ |
验证网址 | [a-zA-z]+://[^\s]* |
验证IP地址 | \b((25[0-5]|2[0-4]\d|[01]\d\d|\d?\d)\.){3}(25[0-5]|2[0-4]\d|[01]\d\d|\d?\d)\b 或 ^(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9])\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[0-9])$(验证范围较大) |
验证手机号或座机号 | (\d{11})|^((\d{7,8})|(\d{4}|\d{3})-(\d{7,8})|(\d{4}|\d{3})-(\d{7,8})-(\d{4}|\d{3}|\d{2}|\d{1})|(\d{7,8})-(\d{4}|\d{3}|\d{2}|\d{1}))$ |
验证邮箱 | ^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$ |
举例代码实现(VB.NET)
引用:<span style="font-family:KaiTi_GB2312;font-size:18px;">Imports System.Text.RegularExpressions</span>
抽象出来的方法:
<span style="font-family:KaiTi_GB2312;font-size:18px;"> Private Function funCheckRegular(ByVal strPattern As String) Return Regex.IsMatch(txt.Text.Trim, strPattern) End Function</span>
验证textbox文本框手机号:
<span style="font-family:KaiTi_GB2312;font-size:18px;">'验证手机号 Private Const C_Tel = "(\d{11})|^((\d{7,8})|(\d{4}|\d{3})-(\d{7,8})|(\d{4}|\d{3})-(\d{7,8})-(\d{4}|\d{3}|\d{2}|\d{1})|(\d{7,8})-(\d{4}|\d{3}|\d{2}|\d{1}))$" Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click If txt.Text.Trim.Length = 0 Then Exit Sub Dim strPattern As String = String.Empty strPattern = C_Tel If funCheckRegular(strPattern) Then MsgBox(" It's Right", MsgBoxStyle.Information, Me.Text) Else MsgBox("Wrong!!!", MsgBoxStyle.Exclamation, Me.Text) End If End Sub</span>
验证结果:
好处
1、可以通过正则表达式过滤给定的字符串,从而达到自己想要的字符串。2、灵活性、逻辑性和功能性非常的强。
3、可以迅速的用极其简单的方式达到字符串的复杂控制。
应用
由于正则表达式的应用对象的文本,因此在各种文本编辑器场合很常用。小结
1、生活就是不断的产生新的需求,不断的解决进步。2、多多探索会有不同的收获。
感谢您的宝贵时间···
相关文章推荐
- Android自定义View解析之视图状态及视图重绘(二)
- 程序员必须知道的几个Git代码托管平台
- iOS中atomic 与 nonatomic,assign,copy与retain的定义和区别
- 【Arduino官方教程第一辑】示例程序 3-1 模拟信号与串口
- Android4.0 Message 中添加附件
- c++课的圆周面积
- 关系型数据库设计范式
- SIM结构模型(Logical model of SIM)
- 天兔(Lepus)数据库监控系统快速安装部署 推荐
- 原版系统装不了
- 脚本 - 清理/维护gpperfmon历史数据
- socket编程小问题:地址已经被使用——Address already in use
- jquery插件autocomplete
- bzoj 1853: [Scoi2010]幸运数字(容斥原理)
- ln -s No such file or directory
- Python list to string
- c# dataGridView导出数据到EXcel
- linux 动态调用 .so 库文件中的函数
- PHP 使用PHPExcel删除Excel单元格指定列
- 热修复