0

我有一个 C# 项目,需要我从 html 流中捕获字符串值。

我需要匹配的模式是:

XXXX-abc  

在哪里:

XXXX = a 4 character integer  

其次是 -

abc =  a 3 character alphanumeric.  

我看着txt2re.com并得到

  string re1="(\\d)";   // Any Single Digit 1  
  string re2="(\\d)";   // Any Single Digit 2
  string re3="(\\d)";   // Any Single Digit 3
  string re4="(\\d)";   // Any Single Digit 4
  string re5="(-)"; // Any Single Character 1
  string re6="((?:[a-z][a-z]*[0-9]+[a-z0-9]*))";    // Alphanum 1

我遇到的困难是将它组合成一个表达式而不是 6 个。我知道我可以做到:

Regex r = new Regex(re1+re2+re3+re4+re5+re6,RegexOptions.IgnoreCase|RegexOptions.Singleline);

但是,我的强迫症对这种方法感到畏缩 :)

4

1 回答 1

1

您可以使用表达式\d{4}-\w{3}4 位数字后跟 - 后跟 3 个字母数字字符。是一个测试和了解正则表达式的好网站。

于 2013-02-12T18:08:37.070 回答