R gsub 单双引号
R gsub a single double quotation mark
我在数据框中有一个字符串字段都类似于:
"Young Adult – 8-9""
里面的单曲 " 是我想要替换的,什么也得不到:
"Young Adult - 8-9"
我该怎么做?我试图用双反斜杠转义:
gsub("\"", "", string)
但出现此错误:错误:"gsub("\"", ""
中出现意外的字符串常量
您不需要在正则表达式中转义双引号。只需使用 "\""
或 '"'
来匹配单个双引号。
s = "Young Adult – 8-9\""
s
[1] "Young Adult – 8-9\""
gsub("\"", "", s)
[1] "Young Adult – 8-9"
gsub('"', "", s)
[1] "Young Adult – 8-9"
注意:因为你想删除一些文字文本,你甚至不需要正则表达式,使用fixed=TRUE
参数来加速操作:
gsub('"', "", s, fixed=TRUE)
当您在 .R script
文件中保存带有 “”
的 gsub
时,“”
将保存为 "
。
gsub("[“”]", "", s) # Doesn't work when you save this piece of code in a script
绕过解决方案首先规范化双引号
x <- proustr::pr_normalize_punc(your_data_frame, your_column_name) %>%
mutate(your_column_name = gsub('\"','', your_column_name))
你可以猜到 proustr::pr_normalize_punc
将所有 “”
转换为 \"
我在数据框中有一个字符串字段都类似于:
"Young Adult – 8-9""
里面的单曲 " 是我想要替换的,什么也得不到:
"Young Adult - 8-9"
我该怎么做?我试图用双反斜杠转义:
gsub("\"", "", string)
但出现此错误:错误:"gsub("\"", ""
中出现意外的字符串常量您不需要在正则表达式中转义双引号。只需使用 "\""
或 '"'
来匹配单个双引号。
s = "Young Adult – 8-9\""
s
[1] "Young Adult – 8-9\""
gsub("\"", "", s)
[1] "Young Adult – 8-9"
gsub('"', "", s)
[1] "Young Adult – 8-9"
注意:因为你想删除一些文字文本,你甚至不需要正则表达式,使用fixed=TRUE
参数来加速操作:
gsub('"', "", s, fixed=TRUE)
当您在 .R script
文件中保存带有 “”
的 gsub
时,“”
将保存为 "
。
gsub("[“”]", "", s) # Doesn't work when you save this piece of code in a script
绕过解决方案首先规范化双引号
x <- proustr::pr_normalize_punc(your_data_frame, your_column_name) %>%
mutate(your_column_name = gsub('\"','', your_column_name))
你可以猜到 proustr::pr_normalize_punc
将所有 “”
转换为 \"