C# 字符串操作,将字符串截断为C上的指定表达式#
如何从每行中删除三个以上的空格,并将字符串结束在那里,以便使用c#查看右侧的行C# 字符串操作,将字符串截断为C上的指定表达式#,c#,.net,regex,C#,.net,Regex,如何从每行中删除三个以上的空格,并将字符串结束在那里,以便使用c#查看右侧的行 可以使用string.Split方法生成字符串[]。根据数组计数,您可以获取所需的元素 string base string = "PO BOX XXX OVERDUE - PAY NOW"; string[] delimittedStringArray = baseString.Split(' '); if(delimittedStringArray.Length > 3) { // Take the d
可以使用string.Split方法生成字符串[]。根据数组计数,您可以获取所需的元素
string base string = "PO BOX XXX OVERDUE - PAY NOW";
string[] delimittedStringArray = baseString.Split(' ');
if(delimittedStringArray.Length > 3)
{
// Take the data from array
}
else
{
// Do what ever
}
//我不确定在if条件下是长度还是计数
input = "PO BOX XXX OVERDUE - PAY NOW ";
input = input.Remove(input.IndexOf(" "));
副题索引中有3个空格
或者,如果您不知道是否有选项卡或空格,可以进行拆分-
input = input.Split(new char[] {' ', '\t'}, StringSplitOptions.RemoveEmptyEntries)[0];
您可以这样做:
var input = new string[3] { "PO BOX XXX OVERDUE - PAY NOW ",
"ClientB AMOUNT CARRI",
"PO BOX 400 FORWARD TO N "
};
for (int x = 0, len = input.Length; x != len; x++)
{
input[x] = Regex.Replace(input[x], @"\s{3}[^\n]+", string.Empty);
}
//input is ["PO BOX XXX","ClientB","PO BOX 400"]
var file = @"D:\file.txt";
var lines = File.ReadAllLines(file);
var output = lines.Select(str => Regex.Replace(str, @"\s{3}[^\n]+$", string.Empty)); // is ["PO BOX XXX","ClientB","PO BOX 400"]
使用linq:
var output = input.Select(str => Regex.Replace(str, @"\s{3}[^\r\n]+$", string.Empty));
如果您正在从文件中读取此字符串,则可以执行以下操作:
var input = new string[3] { "PO BOX XXX OVERDUE - PAY NOW ",
"ClientB AMOUNT CARRI",
"PO BOX 400 FORWARD TO N "
};
for (int x = 0, len = input.Length; x != len; x++)
{
input[x] = Regex.Replace(input[x], @"\s{3}[^\n]+", string.Empty);
}
//input is ["PO BOX XXX","ClientB","PO BOX 400"]
var file = @"D:\file.txt";
var lines = File.ReadAllLines(file);
var output = lines.Select(str => Regex.Replace(str, @"\s{3}[^\n]+$", string.Empty)); // is ["PO BOX XXX","ClientB","PO BOX 400"]
你需要更好地解释截断的标准。当前您的描述与示例不符。很抱歉,文本编辑器删除了所有空格。下面是我想做的:[link]@Arun不一定是三个空格,但上面有很多空格。有时,由于键入错误,客户端名称之间可能有2个空格,所以我要小心。实际上,我的字符串之间有变量空格。它是一个CSV文件,但当我使用IndexOf(“”)时,它不会返回任何内容。[链接]如上所述,我错误地认为三个空格可以解决问题。你知道我怎么能像这样变换吗(下面的链接)[链接]看看编辑-所以如果你不知道有什么样的空间-标签或空间,那就行了。