-1

你能帮我为以下内容构建一个正则表达式:

我有一个字符串: "This Tuesday $5 Million Jackpot 14/Aug/12, Draw 965"我需要提取以下内容:"$5 Million"

短语中的数字可以是任意数字。但它总是看起来像"$N Million"

PS:我试图解析的实际 HTML 是

<b>This Tuesday</b>
 $5 Million  Jackpot
<br />
14/Aug/12, Draw 965

谢谢

4

2 回答 2

1

我建议查看 MSDN 的文档,Regex因为这一切都解释得很好。

static string GetJackpot(string content)
{
    Match match = Regex.Match(content, @"\$\d+ Million", RegexOptions.IgnoreCase);
    return match.Success ? match.Groups[0].Value : null;
}

重要部分:

  • @"\$\d+ Million"查找一个文字$符号,后跟一个或多个数字,后跟文字字符串Million
  • RegexOptions.IgnoreCase匹配时忽略大小写,因此这也将匹配“500 万美元”。
  • 如果正则表达式无法匹配 ( match.Success),则返回null
  • 如果头奖可以是几百万(例如“430 万美元”),那么您必须修改表达式。

祝你中大奖。

于 2012-08-12T01:13:50.257 回答
0
public string ParseMoney(string Sauce)
{
    string Money = Regex.Match(Sauce, @"\$\d+\sMillion", RegexOptions.IgnoreCase | RegexOptions.Singleline).Value;
    return string.IsNullOrEmpty(Money) ? "Unable to find money." : Money;
}

用法:

ParseMoney(HTML);
于 2012-08-12T01:49:03.750 回答