我正在尝试将字符串与字符串向量匹配:
a <- c('abcde', 'abcdf', 'abcdg')
agrep('abcdh', a, max.distance=list(substitutions=1))
# [1] 1 2 3
agrep('abchh', a, max.distance=list(substitutions=2))
# character(0)
我没想到后一种结果是因为从模式中替换两个字符会使模式与向量元素相同。但是,这确实适用于all
而不是substitutions
:
agrep('abchh', a, max.distance=list(all=2))
# [1] 1 2 3
我需要更改哪些内容以匹配允许超过 1 个替换?只是substitution
一个破碎的选择吗?谢谢。
注意:这个问题与这个问题基本相同:https ://stat.ethz.ch/pipermail/r-help/2011-June/281731.html ,但从未得到回答。