正则表达式在工作中的使用案例_自然语言处理

前言

上次我们学习了正则表达式的使用,那今天就以两个现实中的问题为例,来看看正则表达式的妙用,以此来提升工作效率。

案例一

如图,我们需要从基础数据中提取各种括号内的内容,这里有多种括号,有中文的小括号,还有英文的小括号和<>。如果用Excel中的函数的话也能实现,但是很复杂,我们这里用正则表达式来实现。


正则表达式在工作中的使用案例_自然语言处理_02

(1)将表格中的内容复制到word中,记得粘贴时,使用只保留文本。


正则表达式在工作中的使用案例_html_03

(2)使用Ctrl+H调出替换窗口,使用通配符(这里其实就是使用正则表达式,但是需要注意的是,word中的正则表达式元字符有限,有些字符是没法使用的),在查找内容中输入:

[<>()\(\)]

在替换窗口中输入^t。


正则表达式在工作中的使用案例_python_04

正则表达式在工作中的使用案例_python_05

这里解释下[<>()\(\)]含义,中括号的意思就是匹配中括号内任意的字符,由于英文的小括号代表提取的意思,所以前面要加上\,用于转义。

这样就能把这些括号,全部替换为制表符。

(3)最后,复制到Excel中即可。


正则表达式在工作中的使用案例_正则表达式_06

案例二

上文中为了使用正则表达式,需要在word中使用,其一比较麻烦,其二word中正则表达式的功能也不强大。所以要使用更复杂的功能,就需要使用编程语言了。

下次我们再详细讲解Python正则表达式,这次我们在在线网站上使用正则表达式(https://regex101.com/)。

在爬虫中,爬取的信息如下:

高楼层(第9层)|2013年建|3室1厅|南北

我们需要清洗为:

9 2013 3室1厅 南北

通过下面代码即可:

(\d+)\)\|(\d{4})年建\|(\d室\d厅)\|([东西南北]+)


正则表达式在工作中的使用案例_python_07

今天的内容就到这啦,下期详细分享Python正则表达式。