如何从数据框中的列中删除文本 [start section id="20107"]

How do I remove the text [start section id="20107"] from a column in a dataframe

我正在尝试删除出现在数据框中一列的每个单元格中的字符串 [start section id="20107"]

我试过了df1$Col1<- gsub("[start section id="20107"]", "", df1$Col1)但是我遇到了一个错误unexpected numeric constant in df1$Col1<- gsub("[start section id="20107",不知道我还能尝试什么,感谢大家的帮助。

[start section id="20107"]

(11-Feb-2013 13:22 DK04)
#1 Preventive exam
#2 Mild hyperlipidemia
#3 Hyperglycemia
#4 Peripheral neuropathy

gsub 需要正则表达式,因此 [ 被视为特殊的正则表达式字符。使用 fixed = TRUE。此外,您必须使用 \ 转义引号,因此如果字符串中有 ",请使用 \"

df1 <- data.frame(Col1 = "fdsfd [start section id=\"20107\"]")
df1$Col1<- gsub("[start section id=\"20107\"]", "", df1$Col1, fixed = TRUE)

使用 fixed = TRUE,您的搜索模式被视为 "plain string",而不是正则表达式。

gsub 中的 pattern 由于嵌套双引号而变得混乱。 要么转义数字周围的引号,要么在模式周围使用单引号。还可以使用 fixed = TRUE,因为您不是要匹配正则表达式而是要匹配修复模式。

gsub('[start section id="20107"]', "", df1$Col1, fixed = TRUE)