首页 > 其他分享 >正则表达式

正则表达式

时间:2024-07-16 09:25:38浏览次数:21  
标签:字符 匹配 符号 正则表达式 举例 表达式

前言

        正则表达式,在搜索和操作文本字符串,特别是在处理文本文件时,非常强大。一行正则表达式可以很容易地取代几十行编程代码。所有脚本语言(如Perl、Python、PHP和JavaScript)、通用编程语言(如Java)甚至用于搜索文本的Word等文字处理器都支持Regex。开始使用正则表达式可能并不容易,因为它的极客的语法,但它肯定是值得您投入的时间。

正则表达式验证网站链接:https://regex101.com/

一个典型的例子

用户名长度在2到17个字符之间的QQ邮箱匹配 ^[A-Za-z0-9_-]{2,17}@qq\.com$

正则表达式符号介绍

Repeaters ( *, +, and { } ) (重复字符)

符号说明表达式应用匹配字符举例
*匹配前面的字符(或字符集)0次或多次(直到无限次)ab*cac, abc, abbc, abbbc
+重复前面的字符(或字符集)至少一次或多次(最多无限次)ab+cabc, abbc, abbbc
{ }重复前面的字符(或字符集)的次数与括号内的值一样多a{2}aa

Wildcard (通配符)

符号说明表达式应用匹配字符举例
.通配符:点符号可以代替任何其他符号.a3a,aa、_a

Optional character ( ? ) (选择符)

符号说明表达式应用匹配字符举例
?可选择符:前面的字符可能存在也可能不存在于要匹配的字符串中docx?doc、docx

The caret ( ^ ) symbol(开始符)

符号说明表达式应用匹配字符举例
^匹配必须从字符串或行的开头开始^\d{3}901-333

The dollar ( $ ) symbol (结束符)

符号说明表达式应用匹配字符举例
$匹配必须发生在字符串的末尾,或者在行或字符串结尾处的\n之前-\d{3}$901-333

Character Classes (字符类)

符号描述
\s匹配任何空白字符,如空格和制表符
\S匹配任何非空白字符
\d匹配任何数字字符
\D匹配任何非数字字符
\w匹配任何单词字符
\W匹配任何单词边界(这将包括空格,破折号,逗号,分号等)
[set_of_characters]匹配set_of_characters中的任何单个字符。默认情况下,匹配区分大小写。

[first-last] Character range (字符范围)

符号描述表达式
[first-last]在a-z的范围内匹配其中一个字符[a-zA-Z]

The Escape Symbol ( \ ) (转义字符)

符号描述表达式应用匹配字符举例
\如果要匹配实际的'+','.'等字符,请在该字符之前添加反斜杠(\)。这将告诉计算机将以下字符视为搜索字符,并将其视为匹配模式。\d\+\d1+2

Grouping Characters ( ) (字符组)

符号描述表达式应用匹配字符举例
()正则表达式的一组不同符号可以组合在一起作为一个单元,并表现为一个块,为此,您需要将正则表达式括在括号()中。(abc)\d+abc1、abc123

Vertical Bar ( | )

符号描述应用表达式匹配字符举例
|匹配由竖线(|)字符分隔的任意一个元素。(a|b|c)ggagg、bgg、cgg

\number

符号描述应用表达式匹配字符举例
\nn为具体数字,允许先前匹配的子表达式(捕获或括在圆括号中的表达式)随后在同一正则表达式中被识别。\n表示第n个括号内的组将在当前位置重复[a-z])\1geek

标签:字符,匹配,符号,正则表达式,举例,表达式
From: https://blog.csdn.net/weixin_42105599/article/details/140448486

相关文章

  • 第六章字符串及正则表达式
    字符串的常用操作点击查看代码示例6-1字符串的相关操作1#大小写转换s1='HELLOWORLD'new_s2=s1.lower()print(s1,new_s2)new_s3=s1.upper()print(new_s3)#字符串的分隔e_mail='[email protected]'lst=e_mail.split('@')print('邮箱名:',lst[0],'邮箱服务器:',......
  • python中的re模块--正则表达式
    正则表达式,又称规则表达式。(英语:RegularExpression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本  re模块作用通过使用正则表达式,可以:测试字符串内的模式。——例如,可以测试输入字符串,以查......
  • [regex]正则表达式
    1.参考及测试文本正则表达式在线测试工具,选python语言,python字符串前直接加r防止正则表达式被转义github上找的学习资料测试字符串(随便敲的)ThefatcatsatonthematThecarparkedinthegarageAgarageisagoodplacetoparkacargoodplace.Thefatcatsat......
  • 正则表达式
    正则表达式RegularExpress【1】、三剑客与正则表达式1、注意事项正则符号都是英文符号,避免使用中文符号推荐使用grep/egrep命令,默认设置了别名alias,自动加上颜色【2】、符号概述正则:regularexpression(RE)正则表达式regularexpression符号基础正则BRE^......
  • Spark SQL中的正则表达式应用
    正则表达式是一种强大的文本处理工具,在SparkSQL中也得到了广泛支持。本文将介绍SparkSQL中使用正则表达式的主要方法和常见场景。目录1.正则表达式函数1.1regexp_extract1.2regexp_replace1.3regexp_like2.在WHERE子句中使用正则表达式3.在GROUPBY中使用正......
  • 精通Postman响应解析:正则表达式的实战应用
    ......
  • 正则表达式详解
    1.正则表达式的作用(1)文本搜索和匹配:可以用来搜索、匹配和替换特定模式的文本。          比如,查找所有符合特定格式的邮箱地址、电话号码等。(2)数据验证:可以用来验证用户输入是否符合特定的格式要求。     比如,验证电子邮件地址、密码复杂度等。(3)数据......
  • 正则表达式
    声明:此随笔内容转载自廖雪峰官方网站,仅供自我学习,无任何商业目的,如侵权,请告知。字符串是编程时涉及到的最多的一种数据结构,对字符串进行操作的需求几乎无处不在。比如判断一个字符串是否是合法的Email地址,虽然可以编程提取@前后的子串,再分别判断是否是单词和域名,但这样做不但麻......
  • 正则表达式
    通用正则表达式:正则表达式:可以用在限制用户输入的范围、长度,也可以在搜寻时给定一个指定的范围和长度。您正在编写应用程序,并且您希望在用户选择用户名时设置规则。我们希望用户名可以包含字母,数字,下划线和连字符。为了让它看起来不丑,我们还想限制用户名中的字符数量。应用......
  • 生信算法9 - 正则表达式匹配氨基酸序列、核型和字符串
    建议在Jupyter实践。1.使用正则表达式匹配指定的氨基酸序列importre#氨基酸序列seq='VSVLTMFRYAGWLDRLYMLVGTQLAAIIHGVALPLMMLI'#正则表达式匹配match=re.search(r'[A|G]W',seq)#打印match及匹配到开始位置和结束位置print(match)#<re.Matchobject;......