[问题] 正则表达式-"\\."

楼主: oldjojotenya (旧舅舅)   2014-12-10 18:44:38
[软件熟悉度]:
鲁肉脚
[问题叙述]:
coursera某篇在教strsplit的section:
>names(cameraData)
[1] "address" "direction" "street" "crossStreet" "intersection" "Location.1"
该篇教学内容主要目的是要透过strsplit将"Location.1"经由"."分离,因此要设正则
表达式:
splitNames = strsplit(names(cameraData), "\\.")
我不懂的地方在于,为何"\\"是两个而不是一个,当我只用一个"\"的时候,会出现以下
警告:
>strsplit(names(cameraData), "\.")
错误: 在起始 ""\." 的字串中 '\.' 是无法辨识的跳脱字符
是否有好心大大可以解惑?谢谢
[关键字]:
regular expression
作者: Wush978 (拒看低质媒体)   2014-12-10 18:54:00
因为\是跳脱字符,所以要两个才代表一个
作者: andrew43 (讨厌有好心推文后删文者)   2014-12-10 19:07:00
因为 \ 在正规表示式是有特别功能的,所以 \\ 才是 \。
楼主: oldjojotenya (旧舅舅)   2014-12-12 23:33:00
原来如此!谢谢!
楼主: oldjojotenya (旧舅舅)   2014-12-12 23:33:00
原来如此!谢谢!
作者: andrew43 (讨厌有好心推文后删文者)   2014-12-19 19:07:00
没全看明白你的意思。你可以举一个例子?或自己测试?
作者: Edster (Edster)   2014-12-20 00:13:00
不晓得你有没有试过把word中的表格,贴上记事本(notepad++)在notepad++中, 开启检视/特殊字符/显示所有字元会看到 \t 表示类似定位点的分隔. 空一格的意思就有点像是word中的TAB键同样, \n 则是用来表示换行. 印象中还有其他表示.这个规格在windows, Mac, Linux 系统各有相近又相异.也是如此, 在R中 要表示路径的话. 都不会用 C:\ 而是 C:\\如前面个人讲的, \\ 才会表示成一个 \应该是 \\ 才会表示成 /

Links booklink

Contact Us: admin [ a t ] ucptt.com