前言
现在在做人力资源管理项目,用户提出新的需求,需要对手机号加以判断。于是,大家都懂得,开始了探索的道路。
内容
正则表达式
定义
百度百科:
正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的而一些特定的字符、及这些特定的字符的组合,组成一个“规则字符串”这个“规则字符串”用来表达对字符串的一种过滤逻辑。
结构
一些普通字符和一些元字符(metacharacters)组成。普通字符包括大小写的字符和数字,而元字符则具有特殊含义。这里推荐大家还是看看百度百科上面关于百度百科的说法。正则表达式
常用几类
功能 |
正则表达式 |
验证汉字 | ^[u4e00-u9fa5]{0,}$ |
验证英文和数字 | ^.[A-Za-z0-9]+$ |
验证输入为大(小)写应为字符 | ^.[A-Z]+$" '小写的为 ^.[a-z]+$ |
验证只输入N个字符 | ^.{n}$ |
验证网址 | [a-zA-z]+://[^s]* |
验证IP地址 |
((25[0-5]|2[0-4]d|[01]dd|d?d).){3}(25[0-5]|2[0-4]d|[01]dd|d?d) 或 ^(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、多多探索会有不同的收获。
感谢您的宝贵时间···