C# 需要帮助:查找字符串模式并将其替换为空字符串

C# 需要帮助:查找字符串模式并将其替换为空字符串,c#,regex,C#,Regex,我的输入字符串是: “-->职务:测试文本 JobId:56565-116503 城市:圣地亚哥 州:加利福尼亚州 邮政编码:92108 说明: 我们正在招聘一名财务总监,负责监督一家成长中的制造公司的所有会计和财务工作。我们正在寻找一名能够亲自进行全周期会计工作的人。 http://www.testurl.comhttp://test.xmlhttp://test.html-->" 我需要使用C#/正则表达式提取以下字符串: 1.“我们正在招聘一名财务总监,负责监督一家成长中的制造业公司的所

我的输入字符串是:

“-->


职务:测试文本
JobId:56565-116503

城市:圣地亚哥
州:加利福尼亚州
邮政编码:92108


说明: 我们正在招聘一名财务总监,负责监督一家成长中的制造公司的所有会计和财务工作。我们正在寻找一名能够亲自进行全周期会计工作的人。


http://www.testurl.comhttp://test.xmlhttp://test.html-->"

我需要使用C#/正则表达式提取以下字符串:

1.“我们正在招聘一名财务总监,负责监督一家成长中的制造业公司的所有会计和财务工作。我们正在寻找一名精通全周期会计的人员。”

我能得到代码方面的帮助吗


感谢阅读。

您可以使用以下内容:

 JobId: [^\s]+\sCity: .*?\sState: [A-Z]{2}\sZip Code: [^\s]+\sDescription:
更新的正则表达式:

Regex.Replace(input, @"JobId:.*?City:.*?State:.*?Zip\s+Code:.*?(?=Description:)","");
结果:高级会计师-成长中的上市公司描述:多方面的跨国公司

编辑:根据您的编辑进行评论

上面的正则表达式应该处理多个描述项。例如:

string input = "Senior Accountant - Growing Public Company JobId: 34441-345877 City: Santa Diego State: CA Zip Code: 93117 Description: 1st description here Description: Multi-faceted multi-national corporation...";

替换结果是:“高级会计师-成长中的上市公司说明:此处的第一个说明说明:多方面的跨国公司…”

如果您只需要提取
说明
字段值,也许用空字符串替换所有不需要的东西不是最好的解决方案

假设您的问题可以反过来问“如何提取描述字段值?”,那么您需要的正则表达式可以非常简单,如下所示:

string pattern = @" Description: (.+)$";

然后,您可以使用
Regex.Match/NextMatch
循环提取所有描述。

如果您的所有描述都使用“description:”将地址与描述分开,那么您可以继续学习:

string separator = "Description:";
int startIndex = originalText.IndexOf(separator)+separator.Length;
string newText = originalText.Substring(startIndex);

谢谢你的回答…我已经修改了我的问题。如果你能回答我的问题,我将不胜感激。埃德:我相信根据你最近的编辑,上面的正则表达式可以处理多个描述。我用一个示例输入字符串和结果进行了更新。
string separator = "Description:";
int startIndex = originalText.IndexOf(separator)+separator.Length;
string newText = originalText.Substring(startIndex);