检查VBA中字符串中的模式

时间:2016-03-30 13:25:43

标签: vba

我的要求是我需要检查字符串变量是否具有第一个字符" P"后跟数字。

例如

  

P0
   P123
   P22

到目前为止,我已根据here查看了使用Like的选项。

4 个答案:

答案 0 :(得分:4)

您还可以使用原生ListaParcelas运算符:

Like

答案 1 :(得分:3)

您可以使用简单的RegExp:

Sub Test()
Debug.Print strOut("P22")
Debug.Print strOut("aP22")
Debug.Print strOut("P12344")
End Sub

测试代码

{{1}}

答案 2 :(得分:0)

(mystr Like "P#") or (mystr Like "P##") or (mystr Like "P###")  

可能是最快的解决方案,也是最简单的解决方案。

mystr like left("P######", len(mystr)) 

也可以运作,并且更通用。

无论如何,如果要在查询中使用它,则通用LIKE应该比任何VBA函数更有效。

答案 3 :(得分:0)

我的0.02美分

Sub Foo2()
x = "P0123"
Debug.Print IsNumeric(Replace(x, "P", "",,1))
End Sub