我在查找字符串中的最後一個字符時遇到問題。我正在嘗試使用regexpr
函數來檢查最後一個字符是否等於/
正斜槓。使用regexpr函數在R中查找最後一個字符
但不幸的是它確實有效。誰能幫我?以下是我的代碼。
regexpr(pattern = ".$", text = /home/rexamine/archivist2/ex///) != "/"
我在查找字符串中的最後一個字符時遇到問題。我正在嘗試使用regexpr
函數來檢查最後一個字符是否等於/
正斜槓。使用regexpr函數在R中查找最後一個字符
但不幸的是它確實有效。誰能幫我?以下是我的代碼。
regexpr(pattern = ".$", text = /home/rexamine/archivist2/ex///) != "/"
你可以使用一個簡單的grepl
功能,
> text = "/home/rexamine/archivist2/ex///"
> grepl("/$", text, perl=TRUE)
[1] TRUE
> text = "/home/rexamine/archivist2/ex"
> grepl("/$", text, perl=TRUE)
[1] FALSE
^.*\/$
您可以使用this.This如果最後一個字符不是/
將失敗。
你能避免使用正則表達式,並使用substr
做到這一點。
> x <- '/home/rexamine/archivist2/ex///'
> substr(x, nchar(x)-1+1, nchar(x)) == '/'
[1] TRUE
或者使用str_sub
從stringr
包:
> str_sub(x, -1) == '/'
[1] TRUE
不客氣:-) – 2014-09-10 12:14:27
非常感謝你:) – 2014-09-10 15:07:34