>str= "AAC|Australia Acquisition Corp. - Ordinary Shares|S|N|D|100"
> strsplit(str,"\\|")
[[1]]
[1] "AAC"
[2] "Australia Acquisition Corp. - Ordinary Shares"
[3] "S"
[4] "N"
[5] "D"
[6] "100"
Run Code Online (Sandbox Code Playgroud)
我不知道\\|等于|什么?
也许\\|等于\|,
为什么可以 strsplit(str,"\\|")工作?
aio*_*obe 14
以来
|
Run Code Online (Sandbox Code Playgroud)
在REG-EXPS它需要转义特殊的意义,因此如果要匹配| 实际的正则表达式是
\|
Run Code Online (Sandbox Code Playgroud)
因为\在声明字符串文字(你可能从其他人那里识别它\n)时又是一个特殊字符,所以\需要自己进行转义.即,为了创建包含\|您需要的字符串文字
\\|
Run Code Online (Sandbox Code Playgroud)
因为它是一个带引号的字符串.在带引号的字符串中,您可以"通过使用a转义它来包含一个字符\.一\则本身也需要进行转义是一个单一的反斜杠.所以你引用的字符串意味着:\|.
现在在正则表达式中,a |是一个特殊字符,除非被转义,否则不会按字面匹配.R中的正则表达式也以反斜杠转义,因此字符串文字"\\|"表示字符串\|,它是一个完全匹配的表达式|.为什么"\\|"有效是因为这意味着准确匹配|哪个在您要拆分的字符串中显示为分隔符.
对R中的正则表达式的更具体的引用可能很方便,但它和许多人一样,引用了perl正则表达式.
| 归档时间: |
|
| 查看次数: |
4089 次 |
| 最近记录: |