我正在尝试在VBA中测试以下字符串。
Test String Expected Result
10 TRUE
10.23 TRUE
10.24.01 TRUE
10.24.02 TRUE
11.1 TRUE
AAA-78-102396-AA-A00-00811-0000-02.zip FALSE
AAA-78-102396-AA-A00-00811-0000-02.pdf FALSE
如您所见,我对数字或带点(。)的序列感兴趣
我尝试使用以下表达式。
\b[0-9(|\.)]+\b
但不幸的是,它在最后两个字符串中选择了 - 分隔的数字。怎么办呢?我是RegExp
的基本用户,我在询问之前尝试搜索,但无法得到任何结果。
答案 0 :(得分:1)
您只能在Excel中执行此操作。如果第一列是A,则在B2中输入以下公式:
=IF(IFERROR(--SUBSTITUTE(A2, ".", ""), FALSE()), TRUE(), FALSE())
问候。
答案 1 :(得分:1)
您正在寻找小数的可选第二部分:
^\d+(?:\.\d+)*$
^
和$
个锚分别匹配输入字符串的开头和结尾。如果您想在较大的文字内部进行匹配,请将其替换为\b
。
答案 2 :(得分:1)