gpt4 book ai didi

c# - 请帮忙修改这个正则表达式

转载 作者:太空宇宙 更新时间:2023-11-03 21:54:21 26 4
gpt4 key购买 nike

<分区>

Possible Duplicate:
RegEx match open tags except XHTML self-contained tags

我正在尝试搜索以下 HTML 字符串以获取这些产品的成本:

<div id=menu>
<p>A hamburger without cheese costs $5.</p>
<p>A cheeseburger with one patty costs $6.</p>
</div>

我能够使用以下表达式成功获取每件商品的价格:

string hamburger = "<p>A hamburger[^\\$]+\\$(?<price>.*?).</p>";
string cheeseburger = "<p>A cheeseburger[^\\$]+\\$(?<price>.*?).</p>"

public string GetProductPrice(string expression)
{
expression = Regex.Unescape(expression);
Regex regex = new Regex(expression);
MatchCollection mc = regex.Matches(MENU_DIV_STRING);

if (mc.Count > 0 && mc[0].Groups.Count == 2)
return mc[0].Groups[1].ToString();
else
return "--";
}

但是,给出这个时我陷入了一个循环:

<div id=menu>
<p>A hamburger without cheese costs $5.</p>
<p>A cheeseburger with one patty costs $6.</p>
<p>A cheeseburger (SPECIAL: add an additional patty for $1 each) costs $6.</p>
</div>

第二个美元符号出现在“花 1 美元加第二个馅饼”中,让我陷入了一个完整的循环。我已经研究并尝试了很多东西,比如使用模式,但在这一点上我完全弄糊涂了。

是否有一个正则表达式可以找出一个芝士汉堡的价格是多少,是否有特价?

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com