VB.Net字符串比较和通配符值



如果我比较的字符串中有一个具有通配符,并且通常只是为了格式化,是否可以进行字符串比较。例如

Dim correctFormat as String = "##-##-###-##"
Dim stringToCheck = someClass.SomeFunctionThatReturnsAStringToCheck
If FormatOf(CorrectFormat) = FormatOF(StringToCheck) then
 Else
End if

我知道FormatOf的语法,但我只是用它来展示我的要求。

不需要正则表达式。

您可以简单地使用Like运算符,它支持?*#作为通配符,也支持字符列表([...][!...]

所以你只需将代码更改为:

If stringToCheck Like correctFormat Then

它将按预期工作。

方法是使用正则表达式-这就是它们的用途。

这是与您发布的格式匹配的正则表达式:

^d{2}-d{2}-d{3}-d{2}$

正如前一篇文章所提到的,您应该为此目的使用正则表达式——它们更适合执行该任务。遗憾的是,学习它们可能会令人困惑,尤其是发现bug可能真的很烦人。我真的很喜欢http://www.regular-expressions.info/和http://regexpal.com/用于以前构建和测试正则表达式。

在VB.net中使用类似reg.ismatch 的东西

相关内容

  • 没有找到相关文章

最新更新