gpt4 book ai didi

c# - 从大字符串 C# 中提取子字符串?

转载 作者:太空狗 更新时间:2023-10-30 01:19:54 25 4
gpt4 key购买 nike

我有一个示例字符串数据

string state="This item (@"Item.Price", "item") is sold with an price (@"Item.Rate", "rate") per (@"Item.QTY", "Qty")";

我想要输出为

 string subStr="Item.Price|Item.Rate|Item.QTY"

有人可以提出一些解决方案吗?我正在尝试从文件中读取这些数据。我有类似的示例代码

if (!string.IsNullOrEmpty(state) && state != null)
{
while (state.IndexOf("Value(@\"") > 0)
{
int firstindex = state.IndexOf("(@\"");
int secondindex = state.IndexOf("\", \"");
if (firstindex > 0 && secondindex > 0)
{
keys.Add(state.Substring(firstindex + 3, secondindex - firstindex - 8));
state = state.Substring(secondindex + 3);
}
}

}

当数据很大时抛出这个异常:

 Length cannot be less than zero

有人可以为此建议一些模式匹配机制。

最佳答案

var subStr = String.Join("|", Regex.Matches(state, @"@\""([\w\.]+)\""")
.Cast<Match>()
.Select(m => m.Groups[1].Value));

subStr 将为 Item.Price|Item.Rate|Item.QTY

关于c# - 从大字符串 C# 中提取子字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21329449/

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