正则表达式(Regular Expression)是一种用来描述和匹配字符串模式的工具。它是由一系列字符和特殊字符组成的模式,用于在文本中查找、替换或提取符合特定模式的字符串。正则表达式能够提供一种灵活、强大且高效的方式来处理字符串匹配的问题。
使用正则表达式,你可以通过指定一些模式规则,例如字符、字符集合、重复次数和位置等,来匹配一个或多个字符串。它可以用于多种编程语言和文本编辑器中,包括但不限于Python、JavaScript、Java和grep等工具。
正则表达式的应用非常广泛,例如在文本搜索、数据验证、数据清洗、语法分析和字符串处理等场景中都有所应用。通过掌握正则表达式的基础语法和常见操作符,你可以更加高效地处理字符串相关的任务。
今天我们就来学习如何使用正则表达式。
一.元字符
二.正则表达式的使用
要使用正则表达式需要先导入re库
实例中re.match只能从字符串的开头匹配
即从Hello开始匹配所以需要在Hello前面加^
我们在这个实例中匹配了一个空白字符,7个数字,一个空白字符,所以结果输出如下
在上面的实例中可以看到7个数字就需要输入7个\d
如果有10个100个,甚至更多数字,就会很麻烦
想要解决这个问题很简单,只需要输入\d+就行了
如果想要匹配更多不连续的字符串只需要做出一下操作
可以看到上面的字符串并不连续 ,但还是匹配到了所有的字符。
现在,我们已经了解到正则表达式的一些基本匹配规则,但用这些简单的规则还远不足以处理我们如今生活中庞大的数据了。
所以为了更方便的处理数据我们进行一下学习
贪婪匹配
贪婪匹配是正则表达式中一种匹配行为,它的特点是尽可能多地匹配文本,即匹配器会尝试匹配尽量多的字符,以满足整个正则表达式的条件。贪婪匹配通常是默认行为,除非在正则表达式中明确指定非贪婪匹配。(.*表示匹配多个任意字符。)如下图所示:
可以清楚的看到输出的结果是0,是字符串的最后一位。
非贪婪匹配
非贪婪匹配(也称为懒惰匹配或最小匹配)是正则表达式中的一种匹配行为,其特点是尽可能少地匹配文本,即匹配器会尝试匹配尽量少的字符,以满足整个正则表达式的条件。要实现非贪婪匹配,可以使用.*?来表达
可以看到,这样的匹配方式可以精准的匹配到所有的字符串
好了,本次学习就到这里了谢谢大家观看。