正则表达式 – 什么正则表达式匹配模式或为空?

前端之家收集整理的这篇文章主要介绍了正则表达式 – 什么正则表达式匹配模式或为空?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我需要与模式匹配的正则表达式或为空.

现在我有一个表达…

"\(?\d{3}\)?[-\s.]?\d{3}[-\s.]\d{4}/x"

…匹配美国电话号码.但是,对于我测试的字符串为空,它是有效的.如果字符串中有任何值,它必须与表达式匹配.

我有其他符合美国邮政编码等需要相同条件的模式.

在同一个表达式中实现这一点的最好方法是什么?

澄清:我正在使用Microsoft的验证应用程序块中的RegexValidator.使用它的一个例子如下:

[StringLengthValidator(0,100,MessageTemplate = "Email must be between {3} and {5}")]
[RegexValidator(@"\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*",MessageTemplate = "Valid Email required.")]
public string EmailAddress
{
    get { return _EmailAddress; } 
    set { SetValue<string>(ref _EmailAddress,value); }
}

这就是为什么我需要一个表达式的解决方案.

将整个正则表达式包含在括号中并放置一个?最后:
(\(?\d{3}\)?[-\s.]?\d{3}[-\s.]\d{4}/x)?
原文链接:https://www.f2er.com/regex/357138.html

猜你在找的正则表达式相关文章