繁体   English   中英

如何在C#中的for循环中修剪和附加字符串

[英]how to trim and append a string in for loop in c#

如何在c#中的for循环中修剪和附加一个字符串,我有一个类似于"\\Examp"l'e"的字符串,我想要的是使用每个循环从中获取示例:

string value = @"\Examp"l'e";

foreach(string trim in value)
{
    if(trim == @"\")
    {
        \\how to trim the value like Examp"l'e
    }
    if(trim == @""")
    {
        \\again trim
    }
    if(trim == @"'")
    {
        \\again trim
    }
}

我的最终输出应该是: Example

考虑使用string.Replace来完成任务,这会更容易:

string value = @"\Examp""l'e";
string final = value
   .Replace("\"", string.Empty)
   .Replace("\\", string.Empty)
   .Replace("'", string.Empty);

蛮力解决方案

trim.replace(oldvalue,"");

更好的方法

Regex.Replace(trim, @"\\"'", "");

我没有尝试过此代码,我打算用正则表达式进行修剪。

string value = @"\Examp"l'e";
value = value.Replace(@"\","").Replace("\"","").Replace("\'","");

我会使用正则表达式:

Regex reg = new Regex(@"[\"']");
string value = @"\Examp"l'e";
string output = reg.Replace(value,String.Empty);

这将用一个空字符串替换正则表达式中括号之间的每个字符。

您可以使用循环和String.Replace (因为您实际上不想从开头和开头,也从中间删除这些字符):

string value = "\\Examp\"l'e";

string[] replaceAll = {"\\","\"", "'"};
foreach(string str in replaceAll)
    value = value.Replace(str, ""); 

Console.Write(value); // Example

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM