在vb中使用正则表达式?

时间:2009-06-15 16:12:28

标签: vb.net

我想在VB.net中使用以下正则表达式:

(\ d + \ d +。)|(??????\ \ \ \ \ \)

我怎么办?我实际上需要编辑一个字符串,使其成为指定的格式

2 个答案:

答案 0 :(得分:4)

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

请注意我添加的额外括号...我很确定它们是必需的,因此“或”(“|”)的两边都被视为同一组的一部分。

“/ d +。\ d +”中的表达式似乎也有错误。如果是“。”你有意图匹配一个文字期间,你应该使用“\”。代替。否则,“。”在RegEx中,lingo是一个单字符通配符。

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

您可以将表达缩短为:

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

问号在RegEx中对于它们出现在表达式中的位置没有任何意义,因此它们不必使用反斜杠进行转义。花括号显示你想要找到之前的东西(问号)的重复次数。

答案 1 :(得分:2)

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