我需要能够读取字符串的文字长度。
实施例
String.Format("\t {0, -15}", "Hello World")
将是20。如果我只需要它来处理标签和空格,那么编写解码器会很容易,但对于第三个例子,我对如何做到这一点毫无头绪。有没有办法强制String在C#中解释自己?
感谢。
答案 0 :(得分:2)
如果您要控制“\ t”等于4个空格,那么为什么不用4个空格替换所有“\ t”?
类似的东西:
&str
结果:
public static void Main(string[] args)
{
Console.WriteLine(GetLength("\t"));
Console.WriteLine(GetLength("\t foobar"));
Console.WriteLine(GetLength(String.Format("\t {0, -15}", "Hello World")));
Console.WriteLine(GetLength("a\t"));
Console.ReadLine();
}
private static int GetLength(string str)
{
return str.Replace("\t", " ").Length;
}