【发布时间】:2014-04-24 20:01:21
【问题描述】:
我正在做一个小项目,它会在一组网页中搜索一些 PII。特别是,我在正确抓取页面以提取此人居住的州时遇到了一些困难。造成严重破坏的具体示例是印第安纳州。我的正则表达式搜索每个页面以查找完整的州名或州缩写。在这种情况下,由于 Indiana 的缩写是 IN,因此返回了很多误报。所以我的不区分大小写的搜索实际上是返回每个网页,因为“in”是一个很常见的词。有什么聪明的正则表达式或其他技术可以用来消除这个问题吗?我可以尝试通过查找逗号后跟缩写来匹配状态,但有时网页不包含逗号(即',IN')。有什么想法吗?
这是我的正则表达式仅供参考。它查找状态全名和该状态的缩写,由函数调用返回的键值对返回:
re.search(r'\b{0}\b|\b{1}\b'.format(state.strip(), stateDictionaryLookup(state.strip())), webpage, re.IGNORECASE)
【问题讨论】:
-
仅供参考,它的拼写是
Indiana,以防万一你被扔了...... -
抱歉,这里没有拼写检查。
-
为什么您使用不区分大小写的搜索,因为缩写不在 IN 中?那会有帮助吗。还有其他可以锚定的东西吗?例如邮政编码?
标签: python regex web-scraping