R 匹配和替换模式删除下一段
我的文本:R 匹配和替换模式删除下一段,r,R,我的文本: text <- " justo pretium mollis fermentum, quam diam blandit lorem, et pulvinar neque lectus pharetra nunc. Quisque volutpat malesuada tempus. Praesent sagittis commodo ex, sed vulputate odio malesuada et. Praesent neque odio, po
text <- "
justo pretium mollis fermentum, quam diam blandit lorem, et pulvinar neque lectus pharetra nunc. Quisque volutpat malesuada tempus. Praesent sagittis commodo ex, sed vulputate odio malesuada et. Praesent neque odio, posuere at egestas quis, convallis ut urna. Nunc venenatis aliquet turpis, at mattis diam dictum sit amet.
news·20000304·LF·172821401
Sed luctus rutrum tortor sit amet placerat. Proin tempor faucibus erat, at scelerisque mauris."
我的结果是:删除第二段
我想要的是:
justo pretium mollis fermentum, quam diam blandit lorem, et pulvinar neque lectus pharetra nunc.
Quisque volutpat malesuada tempus. Praesent sagittis commodo ex, sed vulputate odio malesuada et.
Praesent neque odio, posuere at egestas quis, convallis ut urna. Nunc venenatis aliquet turpis, at mattis diam dictum sit amet.
---
Sed luctus rutrum tortor sit amet placerat. Proin tempor faucibus erat, at scelerisque mauris..
试试这个:
pattern <- "(?<=[[:space:]])(news\\·.{1,})(?=[[:space:]])"
gsub(pattern, "---", text, perl = T)
pattern问题在于,“news·.+”扩展到包含“.+”后面的所有内容,因此删除了第二段。如果改为写“news·.+\n”,它将在换行符处停止
pattern <- "(?<=[[:space:]])(news\\·.{1,})(?=[[:space:]])"
gsub(pattern, "---", text, perl = T)