gpt4 book ai didi

c# - 如何在 C# 中将模式与正则表达式匹配,以应对正则表达式的挑战?

转载 作者:行者123 更新时间:2023-11-30 19:32:06 27 4
gpt4 key购买 nike

以下面的字符串为例,我应该使用什么模式来提取我需要的所有字符串实例?所以,采取:

string Text = @"Dear {Customer.Name},
Lorem ipsum dolor sit amet, {Customer.FirstName}";

并提取 {Customer.Name}{Customer.FirstName}?作为奖励,可以在提取过程中删除 {} 吗?

我正在研究 LinqPad,我有 new Regex("{[A-Za-z0-9.]+}", RegexOptions.Multiline).Match(Text) 到目前为止,但它只匹配 {Customer.Name} 的第一个子字符串。

我在正则表达式方面遇到很大挑战,所以我很感激详细的帮助。

提前致谢!

最佳答案

您的正则表达式看起来不错。唯一的问题是,您需要调用 Matches 而不是 Match 来获取输入字符串中的所有匹配项。

你可以把你想要的部分放在一个子组中,然后在进一步的处理中只使用这个子组:

var matches = Regex.Matches(Text, "{([A-Za-z0-9.]+)}", RegexOptions.Multiline);
foreach(Match match in matches)
{
var variable = match.Groups[1].Value;
}

关于c# - 如何在 C# 中将模式与正则表达式匹配,以应对正则表达式的挑战?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5974470/

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