agrep
位於 base
包(package)。 說明
使用廣義編輯距離(轉換一個字符串所需的插入、刪除和替換的最小可能加權數量)在字符串 x
(第二個參數)的每個元素中搜索與 pattern
(第一個參數)的近似匹配進入另一個)。
用法
agrep(pattern, x, max.distance = 0.1, costs = NULL,
ignore.case = FALSE, value = FALSE, fixed = TRUE,
useBytes = FALSE)
agrepl(pattern, x, max.distance = 0.1, costs = NULL,
ignore.case = FALSE, fixed = TRUE, useBytes = FALSE)
參數
pattern |
要匹配的非空字符串。對於 |
x |
尋找匹配的字符向量。如果可能,由 |
max.distance |
一場比賽允許的最大距離。表示為整數,或表示為模式長度乘以最大轉換成本的分數(將被不小於相應分數的最小整數替換),或包含可能組件的列表
如果未給出 |
costs |
名稱部分匹配 ‘ 的數字向量或列表插入', '刪除' 和 '替代品’ 給出計算廣義編輯距離的相應成本,或者 |
ignore.case |
如果 |
value |
如果 |
fixed |
合乎邏輯的。如果 |
useBytes |
合乎邏輯的。在多字節語言環境中,比較應該是逐個字符(默認)還是逐個字節。 |
細節
Levenshtein 編輯距離用作近似度的度量:它是將一個字符串轉換為另一個字符串所需的插入、刪除和替換的總數(可能是 cost-weighted)。
它使用 Ville Laurikari (https://github.com/laurikari/tre) 的 tre
代碼,該代碼支持 MBCS 字符匹配。
useBytes
的主要作用是避免有關多字節語言環境中的無效輸入和虛假匹配的錯誤/警告。它禁止帶有標記編碼的輸入的轉換,並且如果發現任何標記為 "bytes"
的輸入(請參閱 Encoding
),則會強製執行。
值
agrep
返回一個向量,給出產生匹配的元素的索引,或者,如果 value
是 TRUE
,則返回匹配的元素(強製後,保留名稱但不保留其他屬性)。
agrepl
返回一個邏輯向量。
注意
由於不小心閱讀說明的人甚至提交了錯誤報告,請注意,這匹配 x
的每個元素的子字符串(就像 grep
一樣)而不是整個元素。另請參閱utils
包中的adist
,它可以選擇返回匹配子字符串的偏移量。
例子
agrep("lasy", "1 lazy 2")
agrep("lasy", c(" 1 lazy 2", "1 lasy 2"), max.distance = list(sub = 0))
agrep("laysy", c("1 lazy", "1", "1 LAZY"), max.distance = 2)
agrep("laysy", c("1 lazy", "1", "1 LAZY"), max.distance = 2, value = TRUE)
agrep("laysy", c("1 lazy", "1", "1 LAZY"), max.distance = 2, ignore.case = TRUE)
作者
Original version in R < 2.10.0 by David Meyer. Current version by Brian Ripley and Kurt Hornik.
也可以看看
相關用法
- R apply 在數組邊距上應用函數
- R as.Date 日期與字符之間的轉換函數
- R append 向量合並
- R assignOps 賦值運算符
- R as.POSIX* 日期時間轉換函數
- R asplit 按邊距分割數組/矩陣
- R attributes 對象屬性列表
- R abbreviate 縮寫字符串
- R all.equal 測試兩個對象是否(幾乎)相等
- R aperm 數組轉置
- R args 函數的參數列表
- R attr 對象屬性
- R array2DF 將數組轉換為 DataFrame
- R autoload 按需加載包
- R attach 將一組 R 對象附加到搜索路徑
- R all.names 查找表達式中的所有名稱
- R as.environment 強製環境對象
- R as.function 將對象轉換為函數
- R assign 為名稱分配值
- R any 有些值是真的嗎?
- R array 多路陣列
- R as.data.frame 強製數據幀
- R all 所有的值都是真的嗎?
- R file.path 構造文件路徑
- R grep 模式匹配和替換
注:本文由純淨天空篩選整理自R-devel大神的英文原創作品 Approximate String Matching (Fuzzy Matching)。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。