我想根据谓词来拆分一个字符串。例如:
"ImageSizeTest" 应该变成 "Image Size Test"
注:谓词是 大写字符
当然,我可以编写一个简单的循环,遍历字符串,检查大写字符(谓词)并构建新字符串。但是,我希望这种拆分更加通用,以任何谓词为基础进行拆分。这依然不难实现,但我想知道是否有一种优雅的方法可以使用 Linq
来完成。
参考:
我想根据谓词来拆分一个字符串。例如:
"ImageSizeTest" 应该变成 "Image Size Test"
注:谓词是 大写字符
当然,我可以编写一个简单的循环,遍历字符串,检查大写字符(谓词)并构建新字符串。但是,我希望这种拆分更加通用,以任何谓词为基础进行拆分。这依然不难实现,但我想知道是否有一种优雅的方法可以使用 Linq
来完成。
参考:
string test ="ImageSizeTest";
string pattern = "[A-Z]";
Regex AllCaps = new Regex(pattern);
var fs = test.ToCharArray().Select(x =>
{
if (AllCaps.IsMatch(x.ToString()))
return " " + x.ToString();
return x.ToString();
}).ToArray();
var resss =string.Join("",fs).Trim();