正则表达式中常见问题汇总

news/2024/7/23 11:14:21 标签: mysql, sql

正则表达式常见问题汇总:
一、将常规的筛选规则写好后发现只匹配到一部分数据,剩下的数据匹配不到,原因大多是由于换行导致的(在匹配的时候会按行进行匹配的,因为我们写的规则.中默认是没有\n的,所以到换行时就会以为结束。可以使用替代的方式将换行替换掉,也就是将数据全部都放在同一行,或者在规则中添加换行符即可),所以在匹配数据的时候多注意一下换行带来的这个问题
二、规则中大小写问题,如果是在python中使用,可以使用re.IGNORE的方式来忽略大小写
三、想匹配同的结果在相同类型的规律下,但是筛选规则只有一处或者两处的差异,这个时候也可以利用.*?的方式来直接替代规则中的差异,也可以使用“|”的方式来进行匹配
四、在匹配数据时,如果筛选规则不太好写,那么就可以通过多次筛选来实现,不要觉得所有的数据都可以通过一次匹配就实现,在实际的使用中,如果是从网站上拿下来的网页数据,规律性可能会强一些,但是如果是其他的文本类型的数据,规律性就会很差,所以就需要通过多次筛选,不断的缩小匹配库内数据
五、有些时候,如果文本的规律性实在特别差,也可以有选择的自行构建相应的规律,然后通过自 己构建出来的规律来实现
六、在匹配想要的数据时,发现.*?的方式得到的结果中有自己不想要的结果,那么就不要使用.*?的方式,自己构建规则,如只需要匹配a-f的字母,那么就可以这样写[a-f],如果还有数字或者特殊符号,那么就再添加[a-f0-9]即可
七,特殊符号,可以单独拿出来讨论,毕竟特殊符号全部拿出来也没有几个,看一下就好了

正则表达式其实就是一种关键字查找的工具,你只要输入数据中的某个特殊点,将其做为起始点,然后再找一个末尾的结束点,数据就会将中间的值匹配出来,也是一种模糊查找的方式,对于处理文本数据,正则表达式确实很高效。而且所谓的学习成本其实也不算是很高,只能说稍加练习,很快就可以掌握

推荐一个好用的公众号:“数据与编程之美” 


http://www.niftyadmin.cn/n/811063.html

相关文章

数据库中去重

数据库中如何去重: 方案其实就是把不重复的值先取出来,新建至中间表,然后再把中间表返回到原表中 数据库中去重,需要分五步走 一、找出重复值清单,利用distinct或group by 的方式将重复值清单取出 二、将没有重复值的…

数据库中快速更改同库下多张表中具有相同字段的数据类型

数据库中快速更改同库下多张表中具有相同字段的数据类型: 分四步走: 一、利用系统表,快速找到含有指定字段的表清单 select table_name from information_schema.column where table_schema 指定数据库 and column_name 指定字段名 二、清单…

数据库中新建表后用select语句查找不到表

数据库中新建表后用select语句查找不到表: 目前来说,如果表在数据库中显示是有的,但是使用语法查不出来,原因如下: 在建表的时候,给表添加了双引号,导致数据库在处理的时候,把双引…

Pg数据库中更改自增字段起始值

我们在使用数据库的时候,会遇到原表中设置的是字段值自增,但是有一些数据迁移或者删减后,发现有一些空缺,这个时候,自增值就会从原来的最大值的下一位开始。 如何使其值重新从指定的数据开始自增呢? alte…

正则表达式补充

正则表达式补充: 前段时间写了关于正则表达式要不要实现从关键字开始向两边出发进行筛选,原来觉得没有必要,并且解决方案是通过多次筛选来实现最终要筛选的值,现在有了新的解决方案: 比如在文本中有多个“&#xff0…

关于flink学习时的想法

近期,由于项目需要,学习flink的使用。 在此次技术架构中,用到了阿里的多款产品,如rds,datahub,flink。其实对于这三个工具都不是很熟悉,所以最开始的时候,只能先看这些产品的简介,看其特性、功能…

关于python中连接oracle数据库执行时的一个小问题

记录python中连接oracle数据库执行时的一个小问题: 使用python连接oracle数据库,其实很方便,有现成的库可以使用,但是做大数据或数据开发的同学经常会遇到一个问题 ,就是需要执行大量的sql语句,所以就会习…

python实现大数据批处理(数据调度)方案

关于数据调度的想法: 如果不使用其他的插件,就只使用python,可不可以实现日调度? 结果应该是可以的,目前为止,可以想到的解决方案如下: 1.利用python连接source(源端数据库&#xff…