现在流行的语言几乎都提供了丰富的String处理函数,但如何方便的表达String literal, 很多语言却重视不够,尤其是对于转义字符和换行、空白的处理;
即当字符串中需要转义的字符比较多或字符串很长需要换行时,如何使字符串依然能够方便直观的书写
C# 提供了 @,Python则提供了 r 和""" """,更为强大和方便
输入
print r"df'h'sf\"s\"f\ns"
print """df'h'sf"s"f
\ns"""
输出
df'h'sf\"s\"f\ns
df'h'sf"s"f
s(注意中间有个空行)
总结一下:
是否需要对'和"至少其一转义
是否需要行尾\连接下一行
转义序列是否变成普通字面量
r
Yes
Yes
Yes
""" """
No
No
No