【发布时间】:2014-04-23 06:40:09
【问题描述】:
在 R 中,我需要从数据框中的列中删除长度超过 7 个字符的字符串。 我的代码是,
memos.to <- as.data.frame(apply(memos.to,2,function(x)gsub('/^[a-zA-Z0-9]{7,}$/', NA ,x)))
它似乎不起作用。这里有什么问题?
【问题讨论】:
-
请举个例子,看看
nchar函数。
在 R 中,我需要从数据框中的列中删除长度超过 7 个字符的字符串。 我的代码是,
memos.to <- as.data.frame(apply(memos.to,2,function(x)gsub('/^[a-zA-Z0-9]{7,}$/', NA ,x)))
它似乎不起作用。这里有什么问题?
【问题讨论】:
nchar函数。
最简单的方法是只检查字符串长度。
不知道 R lang,但如果它符合最小的现代正则表达式,那么一切都是平等的
就正则表达式而言,其中一个应该匹配
/.{8,}/ 使用全点修饰符作为外部标志
或/(?s).{8,}/
或/[\S\s]{8,}/ 如果 Dot-all 不可用
如果你只考虑[a-zA-Z0-9] chars/^[a-zA-Z0-9]{8,}$/
【讨论】: