我尝试使用正则表达式Vbscript查找数字,我使用\d{1}
或\d
,它找到一个单词或日期的任何数字,我只是不想从日期或字符串中提取,它只是数字,数字或点(.
)周围没有任何内容,我怎样才能找到它?
示例
12/12/2009 - No need to match
09 - no need to match
8. match
7 match
有人可以帮助我吗?
答案 0 :(得分:0)
答案 1 :(得分:0)
如果您的规格是“匹配恰好一位数字的字符串”,请使用“^ \ d $”(字符串开头 - 一位数字 - 字符串结尾) - 如
>> Set r = New RegExp
>> r.Pattern = "^\d$"
>> For Each s In Split("12/12/2009 09 8 7 a7b")
>> WScript.Echo s, CStr(r.Test(s))
>> Next
>>
12/12/2009 False
09 False
8 True
7 True
a7b False
如果没有,请说明您的规格。
<强>更新强>
因为我确实错过了“8”中的点。并且混合了“包含”和“编组”,我为“匹配完全包含一位数的字符串”输入“^ \ D * \ d \ D * $”:
>> r.Pattern = "^\D*\d\D*$"
>> For Each s In Split("2/1/2009 09 8. 7 a7b")
>> WScript.Echo s, CStr(r.Test(s))
>> Next
>>
2/1/2009 False
09 False
8. True
7 True
a7b True