问题描述
我正在尝试使用r中的正则表达式删除“:” 之后的子字符串。
"disaster - Natural (ex - fire,tornado,flood,etc.): Flood 1/1/2020;Event - Income: 1/1/2020;disaster - Natural (ex - fire,etc.): Fire"
"disaster - Natural (ex - fire,etc.): Flood 1/1/2020"
"Event - Health; disaster - Natural (ex - fire,etc.): Fire"
在此示例中,我尝试在每个分隔的类别之后删除“ Flood 1/1/2020”,“ 1/1/2020”和“ Fire”。每个“:”后面的单词和日期各不相同。数据以一列为单位,每行的分隔类别数量不同。
正则表达式对我来说是一个弱点。非常感谢您的任何帮助。
解决方法
您是说下面的正则表达式吗?
[1] "Disaster - Natural (ex - fire,tornado,flood,etc.);Event - Income;Disaster - Natural (ex - fire,etc.)"
- fire,etc.)"
[2] "Disaster - Natural (ex - fire,etc.)"
[3] "Event - Health; Disaster - Natural (ex - fire,etc.)"
给出
s <- c("Disaster - Natural (ex - fire,etc.): Flood 1/1/2020;Event - Income: 1/1/2020;Disaster - Natural (ex - fire,etc.): Fire","Disaster - Natural (ex - fire,etc.): Flood 1/1/2020","Event - Health; Disaster - Natural (ex - fire,etc.): Fire"
)
数据
{{1}},
带有str_remove
library(stringr)
str_remove_all(s,"Flood \\d+/\\d+/\\d{4}|:\\s+Fire")
-输出
#[1] "Disaster - Natural (ex - fire,etc.): ;Event - Income: 1/1/2020;Disaster - Natural (ex - fire,etc.)"
#[2] "Disaster - Natural (ex - fire,etc.): "
#[3] "Event - Health; Disaster - Natural (ex - fire,etc.)"
数据
s <- c("Disaster - Natural (ex - fire,etc.): Fire"
)