我在C#中有一个场景: 输入为->
Sachin.Dutta : trimbegging space :: delete spaceafter
预期输出->
Sachin.Dutta:trimbegging space::delete spaceafter
首先,我需要根据:或::分割字符串 然后从每个单词的开头和结尾修剪空格 然后组合单词以获得预期的输出。
我可以使用for循环编写代码以分隔单词并再次重新组合它们。但是,为此使用LINQ或Regex还有更好的方法吗?
答案 0 :(得分:0)
将正则表达式与模式@"\s*:\s*"
一起使用
var input = "Sachin.Dutta : trimbegging space :: delete spaceafter";
var result = Regex.Replace(input, @"\s*:\s*", ":");
输出
Sachin.Dutta:trimbegging space::delete spaceafter
说明
\s*
匹配任何空白字符(等于[\ r \ n \ t \ f \ v])
*
量词-尽可能在零到无限次之间进行匹配,并根据需要(贪婪)进行回馈:
与字符匹配:按字面值(区分大小写)\s*
匹配任何空白字符(等于[\ r \ n \ t \ f \ v])
*
量词-尽可能在零到无限次之间进行匹配,并根据需要进行回馈(贪婪)