1
我想要一個包含文本\1
的字符串。爲什麼三引號字符串中的「 1」評估爲unicode 0x1代碼點
我所做的是(實線較長,但是這並不重要):
'''
\1
'''
這導致含有一個Unicode碼點0x1
一個字符串。
我想我應該所做的是剛剛逃離反斜線:
'''
\\1
'''
我不明白的是爲什麼Groovy中沒有在這裏報告錯誤。我以爲unicode逃生是supposed to look like \u1
?
取而代之的是語法錯誤,我得到了一個運行時異常,當我試圖把這個字符串轉換成XML元素:
An invalid XML character (Unicode: 0x1) was found in the element content of the document.
現在你指出來,我意識到它的[八進制轉義序列](https://docs.oracle.com/javase/specs/jls/se8/html/jls-3.html#jls-3.10.6) - 我可以發誓他們必須以'\ 0'開頭但顯然他們不是 –
Re。斜槓字符串 - 很好的建議,但我實際上*不*要插值在那裏工作 –