gpt4 book ai didi

regex - R:查找并删除所有一到两个字母的单词

转载 作者:行者123 更新时间:2023-12-04 22:59:13 26 4
gpt4 key购买 nike

我试图从文本段落中清除任何一个或两个字母的单词。这是我的第一个想法

gsub(" [a-zA-Z]{1,2} ", " ", "a ab abc B BB BBB")
[1] "a aaa BB BBBB"

我可以看到“a”如何不被替换,因为它没有以空格开头,我可以看到“BB”如何不被替换,因为它所引导的空格已经被“B”捕获了。

最佳答案

您可以使用 \b字边界和 [[:alpha:]]{1,2} 的括号表达式限制量词,然后修剪前导/尾随空格并将多个空格缩小为 1:

tr <- "a ab abc B BB BBB f"
tr <- gsub(" *\\b[[:alpha:]]{1,2}\\b *", " ", tr) # Remove 1-2 letter words
gsub("^ +| +$|( ) +", "\\1", tr) # Remove excessive spacing

结果:
[1] "abc BBB"

IDEONE demo

关于regex - R:查找并删除所有一到两个字母的单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31203843/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com