本文介绍了找到两个字符串之间的所有子的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要从字符串获得所有子结果
。对于前:结果

  StringParser .GetSubstrings([开始] AAAAAA [结束] WWWWW [开始] CCCCCC [结束],[开始],[末]); 

这将返回2串AAAAAA和CCCCCC
假设我们只有一个级别的嵌套。
不知道有关正则表达式,但我认为这将是Userful公司。


解决方案

 私人的IEnumerable<串GT; GetSubStrings(字符串输入,字符串的开始,结束串)
{
正则表达式R =新的正则表达式(Regex.Escape(开始)+(*)?+ Regex.Escape(结束));
MatchCollection匹配= r.Matches(输入);
的foreach(赛的比赛在比赛中)
收益率的回报match.Groups [1] .value的;
}


I need to get all substrings from string.
For ex:

StringParser.GetSubstrings("[start]aaaaaa[end] wwwww [start]cccccc[end]", "[start]", "[end]");

that returns 2 string "aaaaaa" and "cccccc"Suppose we have only one level of nesting.Not sure about regexp, but I think it will be userful.

解决方案
private IEnumerable<string> GetSubStrings(string input, string start, string end)
{
    Regex r = new Regex(Regex.Escape(start) + "(.*?)" + Regex.Escape(end));
    MatchCollection matches = r.Matches(input);
    foreach (Match match in matches)
        yield return match.Groups[1].Value;
}

这篇关于找到两个字符串之间的所有子的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

09-06 06:27