substr
位於 base
包(package)。 說明
提取或替換字符向量中的子字符串。
用法
substr(x, start, stop)
substring(text, first, last = 1000000L)
substr(x, start, stop) <- value
substring(text, first, last = 1000000L) <- value
參數
x , text |
一個字符向量。 |
start , first |
整數。要提取或替換的第一個元素。 |
stop , last |
整數。要提取或替換的最後一個元素。 |
value |
字符向量,必要時回收。 |
細節
substring
與 S 兼容,使用 first
和 last
而不是 start
和 stop
。對於向量參數,它循環地將參數擴展為最長的長度,前提是沒有一個長度為零。
提取時,如果start
大於字符串長度,則返回""
。
對於提取函數,x
或 text
將被 as.character
轉換為字符向量(如果它還不是字符向量)。
對於替換函數,如果start
大於字符串長度,則不進行替換。如果要替換的部分比替換字符串長,則僅替換字符串長度的部分。
如果任何參數是 NA
元素,則答案的相應元素是 NA
。
如果相應的輸入具有聲明的 Latin-1 或 UTF-8 編碼並且當前區域設置是 Latin-1 或 UTF-8,則結果的元素將具有聲明為當前區域設置的編碼(請參閱 Encoding
) 。
如果輸入元素已聲明 "bytes"
編碼(請參閱 Encoding
),則子集化將以字節為單位而不是字符為單位完成。
值
對於 substr
,與 x
具有相同長度和相同屬性的字符向量(在可能的強製轉換之後)。
對於 substring
,長度為參數中最長的字符向量。這將具有從 x
獲取的名稱(如果它有任何後強製,則根據需要重複),以及從 x
複製的其他屬性(如果它是最長的參數)。
對於替換函數,與 x
或 text
長度相同的字符向量,並保留 attributes
例如 names
。
具有聲明的編碼的 x
或 text
的元素(請參閱 Encoding
)將以相同的編碼返回。
注意
substring<-
的 S 版本忽略 last
;這個版本沒有。
這些函數通常與 nchar
一起使用來截斷顯示。這實際上不起作用(您想要限製寬度,而不是字符數,因此最好使用 strtrim
),但至少確保使用默認的 nchar(type = "chars")
。
例子
substr("abcdef", 2, 4)
substring("abcdef", 1:6, 1:6)
## strsplit() is more efficient ...
substr(rep("abcdef", 4), 1:4, 4:5)
x <- c("asfef", "qwerty", "yuiop[", "b", "stuff.blah.yech")
substr(x, 2, 5)
substring(x, 2, 4:6)
X <- x
names(X) <- LETTERS[seq_along(x)]
comment(X) <- noquote("is a named vector")
str(aX <- attributes(X))
substring(x, 2) <- c("..", "+++")
substring(X, 2) <- c("..", "+++")
X
stopifnot(x == X, identical(aX, attributes(X)), nzchar(comment(X)))
參考
Becker, R. A., Chambers, J. M. and Wilks, A. R. (1988)
The New S Language.
Wadsworth & Brooks/Cole. (substring
.)
也可以看看
相關用法
- R substitute 替換和引用表達式
- R subset 向量、矩陣和 DataFrame 的子集化
- R summary 對象摘要
- R sum 向量元素之和
- R strsplit 分割字符向量的元素
- R seq.Date 生成規則的日期序列
- R search 給出 R 對象的搜索路徑
- R solve 求解方程組
- R scan 讀取數據值
- R sprintf 使用 C 風格字符串格式化命令
- R stop 停止函數執行
- R sign 標誌函數
- R svd 矩陣的奇異值分解
- R strtoi 將字符串轉換為整數
- R source 從文件、連接或表達式中讀取 R 代碼
- R sQuote 引用文字
- R switch 選擇替代方案列表之一
- R strrep 重複字符向量的元素
- R split 分組並重新集合
- R slice.index 數組中的切片索引
- R sort 對向量進行排序或排序
- R standardGeneric 形式化方法係統 – 調度 S4 方法
- R sequence 創建序列向量
- R startsWith 字符串是否以另一個字符串開頭或結尾?
- R system.file 查找 R 係統文件的名稱
注:本文由純淨天空篩選整理自R-devel大神的英文原創作品 Substrings of a Character Vector。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。