GREL 替换函数需要 3 个字符串,或者一个字符串、一个正则表达式和一个字符串。
在用于替换的第三个字符串中,某些字符具有特殊行为:\、\、\t、\n、\'、\" 以及可能还有一些其他组合。
\ 不执行任何操作,或者出现错误
\ 被解释为 \
\t 被解释为制表符
\n 被解释为新行
\" 被解释为 "
\' 被解释为 '
前任 :
"abab".replace('b',"\") -> "在偏移量 19 处解析错误:缺少数字、字符串、标识符、正则表达式或括号表达式"
"abab".replace ('b',"\t") -> a a
我想这与Java有关......
还有其他特殊组合吗?
维基百科上有记录吗?
在字符串中,反斜杠 (\) 具有特殊含义。它基本上表明以下字符不应被视为通常意义上的。这就是为什么字符串“t”只是字母 t,而“\t”表示tab
.
此转义字符还用于在字符串中包含引号。例如,字符串 'L'alouette' 将触发错误,因为它包含与字符串周围的引号类型相同的引号。可以通过转义内部 ' : 'L\'alouette' (或使用双引号:“l'alouette”)来避免该问题
在您的示例中,OpenRefine 理解您想要转义第二个引号(“\”)并认为您的字符串尚未完成。在这种情况下,正确的语法是转义 \ 本身:"abab".replace('b', "\\")
特殊字符列表
| Special characters | Display |
|--------------------|-----------------------|
| \' | Single quotation mark |
| \" | Double quotation mark |
| \\ | Backslash |
| \t | Tab |
| \b | Backspace |
| \r | Carriage return |
| \f | Formfeed |
| \n | Newline |
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)