我声明了一串特殊字符。
var SpecialCharSequence = "',!,#,$,%,&,',(,),*,+,-,.,\,/,:,;,<,=,>,?,@,[,],^,_,{,|,},~,";
为什么它为反向斜杠提供错误
Unrecognized escape sequence
当它已经在引号中。
答案 0 :(得分:4)
这是因为你的字符串包含\,这是一个转义字符。
将\
替换为\\
。
var SpecialCharSequence = "',!,#,$,%,&,',(,),*,+,-,.,\\,/,:,;,<,=,>,?,@,[,],^,_,{,|,},~,";
答案 1 :(得分:2)
声明如下:(使用verbatim literal @)
var SpecialCharSequence = @"',!,#,$,%,&,',(,),*,+,-,.,\,/,:,;,<,=,>,?,@,[,],^,_,{,|,},~,";
答案 2 :(得分:0)
是,
\
会导致您的字符串中出现转义序列。
将其转换为\\
即可。 \
是一个特殊符号,代表文字\
,您需要两倍。
答案 3 :(得分:0)
\
是转义字符。如果您想将string
与\
一起使用,请在@
的开头添加string
,使其成为literal string
。否则,您需要使用第二个\
转义单\\
。
var SpecialCharSequence = @"',!,#,$,%,&,',(,),*,+,-,.,\,/,:,;,<,=,>,?,@,[,],^,_,{,|,},~,";
答案 4 :(得分:0)
因为向后斜杠意味着它将与下一个字符组合一起进行字符转义。
喜欢\ t表示标签,\ r表示返回。
您可以使用\来表示反斜杠,或者您可以使用逐字字符串(通过在字符串前添加@),如下所示:
var SpecialCharSequence = @"',!,#,$,%,&,',(,),*,+,-,.,\,/,:,;,<,=,>,?,@,[,],^,_,{,|,},~,";
在逐字字符串中,您告诉编译器您没有在此字符串中使用字符转义...