Ano*_*urn 1 c# string split substring
我有一个生成的字符串有点像
($AverAbandCalls$+$TotalInboundCalls$)*50+$TotalOutboundCalls$
Run Code Online (Sandbox Code Playgroud)
我想得到$符号之间的每一个.我该怎么办?
我知道可以使用The来完成.Split
但是这给了最后的答案.
我想知道如果有办法以更简单的方式做到这一点.
试试这个正则表达式:
(?:\$).*?(?:\$)
Run Code Online (Sandbox Code Playgroud)
由于您使用的是.NET,因此您也可以尝试平衡组:
(?<open>\$).*?(?<final-open>\$)
Run Code Online (Sandbox Code Playgroud)
例:
var input = @"($AverAbandCalls$+$TotalInboundCalls$)*50+$TotalOutboundCalls$";
var reg = new Regex(@"(?<open>\$).*?(?<final-open>\$)");
var matches = reg.Matches(input).Cast<Match>()
.Select(m=>m.Groups["final"].Value).ToList();
foreach (var item in matches)
{
Console.WriteLine(item);
}
Run Code Online (Sandbox Code Playgroud)
哪个输出:
AverAbandCalls
TotalInboundCalls
TotalOutboundCalls
Run Code Online (Sandbox Code Playgroud)