【发布时间】:2017-04-29 16:50:39
【问题描述】:
尝试在 R 中创建一个正则表达式以从字符串中提取县名。当然,您不能只抓住“县”一词前面的第一个字,因为有些县的名称只有 2 个或 3 个字。在这个特定的数据集中,还有一些其他棘手的表达式需要解决。这是我的第一次尝试:
library(data.table)
foo <- data.table(foo=c("Unemployment Rate in Southampton County, VA"
,"Personal Income in Southampton County + Franklin City, VA"
,"Mean Commuting Time for Workers in Southampton County, VA"
,"Estimate of People Age 0-17 in Poverty for Southampton County, VA"))
foo[,county:=trimws(regmatches(foo,gregexpr("(?<=\\bfor|in\\b).*?(?=(City|Municipality|County|Borough|Census Area|Parish),)",foo,perl=T)),"both")]
任何帮助将不胜感激!
【问题讨论】:
标签: r regex data.table