删除以R中的正则表达式开头和结尾的字符串的一部分
我有一组字符串,以[ANONYMOUS]开头,以[ANONYMOUS]结尾;签名 我想从字符串集中删除这个部分 例如,我有以下字符串:删除以R中的正则表达式开头和结尾的字符串的一部分,r,regex,string,R,Regex,String,我有一组字符串,以[ANONYMOUS]开头,以[ANONYMOUS]结尾;签名 我想从字符串集中删除这个部分 例如,我有以下字符串: "[ANONYMOUS],1756 , An Intro, V19;BIAN C, 2016, WINIT, V7, P83;" 我想要这个: "BIAN C, 2016, WINIT, V7, P83;" 我们可以使用sub来匹配模式[(它是一个元字符,所以我们转义\\),从字符串的开头(^)开始,然后是字符串“匿名
"[ANONYMOUS],1756 , An Intro, V19;BIAN C, 2016, WINIT, V7, P83;"
我想要这个:
"BIAN C, 2016, WINIT, V7, P83;"
我们可以使用
sub
来匹配模式[
(它是一个元字符,所以我们转义\\
),从字符串的开头(^
)开始,然后是字符串“匿名”,最后是右括号]
和一个或多个非字符代码>([^;]+
),并替换为空白(“”
)
数据
str1您可以使用str\u extract
和lookback和lookahead:
library(stringr)
str_extract(str1, "(?<=;).*(?=;)")
[1] "BIAN C, 2016, WINIT, V7, P83"
库(stringr)
str_提取物(str1,“(?)?
str1 <- '[ANONYMOUS],1756 , An Intro, V19;BIAN C, 2016, WINIT, V7, P83;'
library(stringr)
str_extract(str1, "(?<=;).*(?=;)")
[1] "BIAN C, 2016, WINIT, V7, P83"