2009-06-15 76 views

回答

4
Dim isMatch As Boolean = _ 
    System.Text.RegularExpressions.RegEx.IsMatch("My test string", _ 
    "((\d+.\d+)|(\?\?\?\?\?\?))") 

注意额外的括号我说......我敢肯定,他们都需要,所以双方的“或”(“| “)被认为是同一组的一部分。

看起来你的表达式在“\ d +。\ d +”中可能有错误。如果“。”你在那里有意图匹配一个文字时期,你应该使用“\”。代替。否则,“。”在RegEx中,术语是单字符通配符。

(我假设你正在寻找下方的文字点...)

你可以缩短你的表达是:

"((\d+\.\d+)|?{6})" 

问号并不意味着在任何正则表达式在现场它们出现在表达式中,所以它们不必用反斜杠转义。花括号显示你想要找到它之前的事物(问号)的重复次数。

+0

我怎么会得到这个正则表达式的输出? – 2009-06-15 16:15:34

+0

我需要导入任何东西吗? – 2009-06-15 16:16:14

2
Dim MyRegex As Regex = New Regex("(\d+.\d+)|(\?\?\?\?\?\?)") //construct a Regex object that you can call later