[英]Substring issue
我有以下代码:
sDocType = pqReq.Substring(0, pqReq.IndexOf(@"\t"));
字符串pqReq如下所示:“CSTrlsEN \\ t001 \\ t \\\\ sgprt \\ Projects2 \\ t001 \\ tCSTrl”。 但即使我能清楚地看到字符串中的t\\
, pqReq.IndexOf(@"\\t")
返回-1,因此会抛出错误。
这样做的正确方法是什么? 我不想在代码中稍后拆分字符串pqReq 。
使用 \\\\t
而不是\\t
。\\t
被视为制表符。sDocType = pqReq.Substring(0,pqReq.IndexOf(@“\\ t”));
我没有注意到\\t
由于是文字@
。 但是你的输入字符串是文字字符串吗? 如果没有,请在pqReq
的值之前放置一个@
。
string pqReq = @"CSTrlsEN\t001\t\\sgprt\Projects2\t001\tCSTrl";
int i = pqReq.IndexOf(@"\t");
//i = 8
我无法重现这个问题。 以下代码(.NET Fiddle here ):
var pqReq=@"CSTrlsEN\t001\t\\sgprt\Projects2\t001\tCSTrl";
var idx=pqReq.IndexOf(@"\t");
Console.WriteLine(idx);
var sDocType = pqReq.Substring(0, idx);
Console.WriteLine(sDocType);
生产:
8
CSTrlsEN
你忘记用@
前缀pqReq吗?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.