以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  动态错误提示问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=83712)

--  作者:联友
--  发布时间:2016/4/15 9:50:00
--  动态错误提示问题

With Tables("学生基本信息")
    Dim HasError As Boolean
    Dim r As Row = Tables("学生基本信息").Current
        If r.IsNull("父亲电话") OrElse r("父亲电话").Length <> 11 Then
        e.Form.Controls("父亲电话").Error = "父亲电话应该是 11 位数!"
        HasError = True
    Else
        e.Form.Controls("父亲电话").Error =  ""
    End If
    If r.IsNull("母亲电话") OrElse r("母亲电话").Length <> 11 Then
        e.Form.Controls("母亲电话").Error = "母亲电话应该是 11 位数!"
        HasError = True
    Else
        e.Form.Controls("母亲电话").Error =  ""
    End If
    If HasError = False Then \'如果没有输入错误,则保存
        r.Save()
        e.Form.Close()
    End If
End With

 

父亲电话和母亲电话输入一个或两个都可以,代码怎样改?谢谢!


--  作者:大红袍
--  发布时间:2016/4/15 10:05:00
--  

这样修改代码

 

Dim pattern As String = "^[0-9]{11}$|^[0-9]{11},[0-9]{11}$"
Dim str = "13827222227,13827126079"
Dim reg As new System.Text.RegularExpressions.Regex(pattern)
If reg.Ismatch(str) = True Then
    msgbox("匹配")
End If


--  作者:联友
--  发布时间:2016/4/15 11:04:00
--  
谢谢