R语言 使用gsub提取a代码(数字和字符)

h5qlskok  于 2023-07-31  发布在  其他
关注(0)|答案(2)|浏览(158)

我有一个字符串,我希望提取的代码,但我不太能够重新创建它,代码将改变每一次,但身份证的一部分将永远是相同的
mycode“ID/5362E-C3A~16DFR-54RFFG”
我想要的东西;

mycode
"5362E-C3A"

字符串
我的尝试,我试图把它分解成3个部分,Ids,我需要的代码和波浪号和其他浪费的代码,然后说我想把第一个示例放在括号里。

mycode = gsub("IDs/([A-9]+)~[A-9+]", "\\1", mycode)

ddrv8njm

ddrv8njm1#

假设你想要在/~之间的所有内容,你可以尝试以下使用交替的正则表达式替换:

x <- "IDs/5362E-C3A~16DFR-54RFFG"
output <- gsub(".*/|~.*", "", x)
output

[1] "5362E-C3A"

字符串

tf7tbtn2

tf7tbtn22#

在“IDs/”部分和波浪号部分保持分割,您可以使用此正则表达式,它使用嵌套的gsub替换波浪号之后的第一个字符和整个子字符串

mycode = "IDs/5362E-C3A~16DFR-54RFFG"
gsub("IDs/", '', gsub("~[^~]*$", '', mycode))

字符串

相关问题