regex 从字母数字字符中删除数字

jvidinwx  于 2023-05-01  发布在  其他
关注(0)|答案(4)|浏览(165)

我有一个字母数字字符列表,看起来像:

x <-c('ACO2', 'BCKDHB456', 'CD444')

我想要以下输出:

x <-c('ACO', 'BCKDHB', 'CD')
6ovsh4lw

6ovsh4lw1#

你可以使用gsub来实现:

gsub('[[:digit:]]+', '', x)

gsub('[0-9]+', '', x)
# [1] "ACO"    "BCKDHB" "CD"
yxyvkwin

yxyvkwin2#

如果您的目标只是删除数字,那么removeNumbers()函数将从文本中删除数字。使用它可以降低出错的风险。

library(tm)

x <-c('ACO2', 'BCKDHB456', 'CD444') 

x <- removeNumbers(x)

x

[1] "ACO"    "BCKDHB" "CD"
ki0zmccv

ki0zmccv3#

使用stringr
大多数stringr函数处理正则表达式
str_replace_all将执行您需要的操作

str_replace_all(c('ACO2', 'BCKDHB456', 'CD444'), "[:digit:]", "")
jexiocij

jexiocij4#

使用stringi的解决方案:

# your data
x <-c('ACO2', 'BCKDHB456', 'CD444')

# extract capital letters
x <- stri_extract_all_regex(x, "[A-Z]+")

# unlist, so that you have a vector
x <- unlist(x)

一行解决方案:

相关问题