使用gsub()
,我想替换"nn";"在此文本中:
mystring<-"People Storm Seonul Airport as Citizens Leave\n\nCHOI JEONGHO\n\nSEOUL, South Korea, Jan. 31"
但是,当我运行gsub("[r\n]", " ", mystring)
时,它删除了文本中的所有n。
输出为:
"People Storm Seo ul Airport as Citize s Leave CHOI JEO GHO SEOUL, South Korea, Ja . 31"
你能教我为什么会这样,怎么只删除&;nn&;吗?
- 您不想使用括号,因为您正在尝试匹配字符序列-括号将单独匹配任何字符,这就是您最终没有
n
的原因。 - 要匹配文字
\n
,需要转义两个反斜杠,得到\\n
。
gsub("(r)|(\\n)", " ", mystring)
# "People Storm Seonul Airport as Citizens Leave CHOI JEONGHO SEOUL, South Korea, Jan. 31"
这是stringr
包的一个选项。在R中,您需要使用\
转义反斜杠,因此您需要使用\\n
作为参数:
stringr::str_remove_all(mystring, "\\n")
"People Storm Seonul Airport as Citizens LeaveCHOI JEONGHOSEOUL, South Korea, Jan. 31"