我在下面输入了字符串
“日期为2018年7月1日的$ 500.00抵押(以下简称“抵押”),
,在输出中,我只想作为
$ 500.00
我尝试过以下正则表达式,但无法正常工作
Regex = new Regex(@"the amount of \$(.*)", RegexOptions.Singleline)
所以有人可以指导我我做错了什么事吗?
使用上面的正则表达式,我已经得到了输出为 500.00,日期为2019年7月1日。
但是我只想要$ 500.00作为输出。
答案 0 :(得分:1)
使用模式\$\d+(?:\.\d+)?
并遍历所有匹配项:
cstring value = "Mortgage (\"Mortgage\") in the amount of $500.00, dated July 1, 2018 herewith";
MatchCollection matches = Regex.Matches(value, @"\$\d+(?:\.\d+)?");
foreach (Match match in matches)
{
Console.WriteLine(match.Value);
}
答案 1 :(得分:0)
string str=@" Mortgage (""Mortgage"") in the amount of $500.00, dated July 1, 2019 herewith ";
Regex rg = new Regex(@"the amount of \$(.*), dated ", RegexOptions.Singleline);
//@"\$\d+(?:\.\d+)?"
var ans = rg.Match(str).Groups.Cast<Group>().Skip(1).Select(o => o.Value.Replace("\n", "").Trim());