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

时间:2013-02-12 14:05:25

标签: vb.net wildcard string-comparison

是否可以进行字符串比较,其中我所比较的字符串之一具有通配符,通常仅用于格式化目的。例如

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

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

3 个答案:

答案 0 :(得分:4)

不需要正则表达式。

您只需使用支持?*#的{​​{3}}运算符作为通配符以及字符列表([...],{{1 }})

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

[!...]

它将按预期工作。

答案 1 :(得分:1)

方法是使用regular expressions - 这就是它们的用途。

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

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

答案 2 :(得分:1)

正如之前提到的那样,你应该为此目的使用正则表达式 - 它们对于该任务更好。 遗憾的是,学习它们可能会让人感到困惑,尤其是发现错误可能会非常烦人。 我之前非常喜欢http://www.regular-expressions.info/http://regexpal.com/来构建和测试正则表达式。

在VB.net中使用类似reg.ismatch

的内容