正则表达式使用元字符匹配特定的字符或字符类型(三)

精准匹配的秘密:POSIX 字符类如何赋能你的正则表达式 POSIX字符类是正则表达式的一部分,作为预定义的字符集组件使用。摘要要点: POSIX字符类是正则表达式中用于字符集匹配的特殊语法(如[[:digit:]]) 相比手动列举字符(如[0-9]),POSIX类更具可读性和可移植性 主要应用于正则的字符集[]中,支持多语言字符处理 常见POSIX类包括[:digit:],[:alpha:],[:space:]等 虽然tr命令也使用类似语法,但它是简单字符处理而非完整正则引擎 (字数:99) 阅读详情

正则表达式使用元字符匹配特定的字符或字符类型(三)

1、再谈转义

之前学习的元字符回顾:

/ 转义元字符

[ 字符集合的开始

] 字符结合的结束

-是一个特殊的元字符,它只有出现在字符集合[ 和 ] 之间的时候才是元字符。在字符集合以外的地方,-只是一个普通字符

.(dot) 用于匹配任意的单个字符

^用于排除字符集合

观察两个正则表达式

myArray[0]

和

myArray\[0\]

前者只匹配到myArray0,后者匹配到myArray[0]

原因在于:正则表达式里[ 和 ] 是用来定义字符集合的,而不是[ 和 ] 本身

正则表达:

myArray\[[0-9]\]

myArray\[[0-9]\]可以匹配到myArray[0]、myArray[1] 、…、 myArray[8]、myArray[9]

这也就不难理解在Java或者Python等等其他的语言中,指定windows本地路径的时候为什么要用\\了

正常的windows路径是这样的:D:\develop\software\home

当我们在大部分编程语言或者脚本语言中却是这样使用的D:\\develop\\software\\home

2、匹配空白字符

空白元字符表

元字符说明
[\b]回退(并删除)一个字符(Backspace)
\f换页符号-------f为page的首字母
\n换行符
\r回车符----return的首字母
\t制表符(Table)
\v垂直制表符

\r\n匹配一个“回车(carriage return)+ 换行(line feed)“组合是很多操作系统的结束标记

\r\n\r\n是两条记录直接的空白行

Windows文本行结束标记:\r\n

Unix/Linux和Mac OS匹配空白行仅仅需要\n即可

理想的正则表达式应该适应上面两种情况:包含一个可选的\r和一个必须被匹配的\n

3、匹配特定的字符类型

a、匹配数字

数字元字符表

元字符说明
\d任何一个数字字符(等价于[0-9])
\D任何一个非数字字符(等价于[^0-9])

利用数字元字符表示正则表达的等价

myArray\[[0-9]\]
myArray\[[0123456789]\]
myArray\[[\d]\]
b、匹配字母数字

字母数字元字符

元字符说明
\w任何一个字母数字字符(大小写均可)或下划线字符(等价于[a-zA-z0-9_])
\W任何一个非字母数字或下划线字符(等价于[^a-zA-z0-9_])

4、匹配空白字符

空白字符元字符

元字符说明
\s任何一个空白字符(等价于[\f\n\r\t\v])
\S任何一个非空空白符(等价于[^\f\n\r\t\v])

注意:用来匹配退格符的[\b]元字符不在\s的覆盖范围内,\S也没有将其排除

5、匹配16进制或8进制

这个知识可能在我整个人生中都不会用到,但是必须要了解

16进制\x0A(对应ASCII字符10,也就是换行符)等价于\n

8进制\011(对应ASCII字符9,也就是制表符)等价于\t

6、使用POSIX

POSIX是一种特殊的标准字符类集,也是许多正则表达式实现都支持的一种简写方式

POSIX字符类

字符类说明
[:alnum:]任何一个字母或数字(等价于[a-zA-z0-9])
[:alpha:]任何一个字母(等价于[a-zA-Z])
[:blank:]空白或制表符(等价于[\t ])----字母t后面有一个空格
[:cntrl:]ASCII控制字符(ASCII 0到31,再加上ASCII 127)
[:digit:]任何一个数字(等价于[0-9])
[:graph:]和[:print:],但不包括空格
[:lower:]任何一个小写字母(等价于[a-z])
[:print:]任何 一个可打印字符
[:punct:]既不属于[:alnum:],也不属于[:cntrl:]的任何一个字符
[:space:]任何一个空白字符,包括空格(等价于[\f\n\r\t\v ])—字母v后面有一个空格
[:upper:]任何一个大写字母
[:xdigit:]任何一个16进制数字(等价于[a-fA-F0-9])

注意:JavaScript不支持在正则表达式里使用POSIX字符类

使用POSIX字符类的时候必须以 [[ 开头,以 ]] 结束,外层的[ 和 ]字符用来定义一个字符集合,内层的[ 和 ]字符是POSIX字符类本身的组成部分

ERA5 数据集下载(2025最新 可运行) 众所周知,ERA5数据集经过了更新,尤其是在API访问和下载方式上发生了变化。2025年版的ERA5数据集为气象研究人员提供了更高质量的历史气象数据。本文将介绍如何通过新的API接口下载最新的ERA5数据集。 阅读详情

相关推荐

实战解析:基于Python的APT攻击检测与ATT&CK框架应用

本文通过实战案例,详细解析了如何利用Python编程语言结合MITRE ATT&CK框架,构建一套针对高级持续性威胁(APT)的自动化检测与狩猎系统。文章涵盖了从环境搭建、核心检测逻辑编写、到模块化框架设计与主动威胁狩猎的全过程,为安全从业者提供了可落地的技术方案,以有效应对复杂的网络攻击。

weixin_29044157的博客 388

正则表达式基础之元字符及四种匹配模式

如果我们想要前面匹配上的结果,和第二次重复时的大小写一致,那该怎么做呢?我们只需要用括号把修饰符和正则 cat 部分括起来,加括号相当于作用范围的限定,让不区分大小写只作用于这个括号里的内容。可以匹配除了换行以外的任何元素,用单行模式中使用。,这样匹配的字符就不区分大小写了。\D \W \S,意思正相反。不区分大小写模式,正则表达式。,这样的匹配好处是每一行。

xiaoweids的博客 282

GitHub 镜像站点

国内访问 GitHub 有时会遇到速度慢或不稳定的情况,这时 GitHub 镜像站点就能帮上忙。它们通过代理或缓存机制,让你更顺畅地浏览仓库、下载资源甚至克隆代码。希望这些信息能帮你更顺畅地访问 GitHub 资源。下面表格汇总了一些常见的镜像站及其主要用途。

BillKu的博客 6万+

php 正则表达式

元字符 元字符 描述 . 匹配除换行符以外的任意字符 \w 匹配字母或数字或下划线或汉字 \s 匹配任意空白符 \d 匹配数字 \b 匹配单词的开始或结束 ^ 匹配字符串的开始 $ 匹配字符串的结束 - 表示范围 [] 匹配括号中的任意一个字符 []只能匹配单个字符 例如匹配"cat",“hat”,可以写成[ch]at,要匹配"toat",“c...

hi,你好鸭。 392

Windows 10下Gpg4win 4.3.1安装与配置全攻略:从下载到邮件加密实战

本文详细介绍了在Windows 10系统下安装和配置Gpg4win 4.3.1的全过程,包括下载、验证、自定义安装以及密钥管理。特别重点讲解了如何通过Kleopatra证书管理器进行密钥创建和管理,以及在Outlook中实现邮件加密的实战操作,帮助用户全面提升数据安全防护能力。

weixin_29271263的博客 301

Python实战:超分辨率图像质量评估全攻略——PSNR、SSIM、LPIPS与NIQE的代码实现与优化

本文详细介绍了在Python中实现超分辨率图像质量评估的完整方案,涵盖PSNR、SSIM、LPIPS和NIQE四大核心指标。通过模块化代码设计、多进程并行处理和GPU加速优化,帮助开发者构建高效、可扩展的评估系统,并提供了实战避坑指南与结果解读方法。

weixin_29053073的博客 472

正则表达式的元字符

元字符 1.\ :将下一个字符标记为一个特殊字符,或一个后向引用,或一个八进制转义符。 2.^ :匹配输入字行首。 3.$ :匹配输入字行尾。 4.* :匹配前面的子表达式任意次。 5.+ :匹配前面的子表达式一次或多次(大于或等于一次)。 6.?:匹配前面的子表达式一次或零次。 7.{n}:n是一个非负整数。匹配确定的n次。例如,“o{2}”不能匹配“Bob”中的“o”,但能匹配“food”中的两个“o”。 8.{n,}:n是一个非负整数。至少匹配n次。例如,“o{2}”不能匹配“Bob”中的“o”,但能

m0_66232937的博客 407

昆仑通态,自由串口通讯

软件默认无该功能,需要问客服索要扩展包。

cfqq1989的博客 1536

正则表达式中的通配符(或称为元字符)都有哪些?

正则表达式中的通配符(或称为元字符)是指具有特殊含义的字符,它们可以用来匹配一类字符,而不仅仅是字面上的字符。请注意,这些通配符的具体行为可能会受到正则表达式引擎和所使用的选项(如是否区分大小写、是否考虑多行等)的影响。

qq_53810226的博客 928

【DRAM存储器一】基本存储单元、阵列结构、读写原理

详述DRAM存储器存储单元、存储阵列结构和读写原理

highman110的博客 7250

《中国电信运营商骨干网:历史、现状与未来演进》系列 第一篇:中国骨干网全景图:一级运营商与专用网络的演进

揭秘国家信息高速公路!一文读懂什么是骨干网,它如何支撑我们的数字生活,以及电信、联通、移动、广电等巨头如何构建这张“国家级动脉”。

maqh_csdn的博客 2036

正则表达式 入门 -- 简单字符匹配、元字符

好的工具可以提高工作效率,正则表达式绝对是这其中一员。最近抽时间大概了解了一下这方面的知识,整理了一下自己的一些笔记,文中示例通过vim编辑器来演示,匹配到的字符为黄色高亮显示,并在下面注明了显示结果。 首先,正则表达式的定义:一些用来匹配和处理文本的字符串 主要用途:搜索,替换 在正式开始之前,有一点需要特别强调:正则表达式的语法很容易掌握,但是真正的挑战是如何运用那些语法把实际问...

互联网 301

TI单芯片毫米波雷达1642代码走读(〇)——总纲

前言 近年来,自动驾驶行业发展如火如荼,雷达技术也逐渐从军工封闭圈走向了开放的市场。 毫米波雷达具有全天候探测能力,特别是在雨雪雾天气以及夜间都能可靠工作,并且探测距离相对其他车载传感器非常远,对运动目标非常敏感,价格还低廉,这些特性都使其成为自动驾驶感知层面不可或缺的一环。 现如今的雷达已经不仅仅局限于测距测速测角等传统的功能,雷达技术正在从感知走向认知、从宽带走向超宽带、从二维走向三维四维、从相控阵走向数字阵列、从单通道走向MIMO、从独立工作走向分布式协同、从分立组件走向射频数字一体化。MIMO

3万+

4 使用元字符

本书第2章介绍过元字符。本章将学习如何使用更多的元字符,去匹配特定的字符或字符类型。

qq_43580742的博客 1085

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

正则表达式必知必会 - 使用元字符

使用元字符

wzy0623的专栏 715

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

正则表达式 \b \B,单词边界的匹配

正则表达式 \b \B 深入浅出理解单词边界的匹配

记录学习点滴 8706

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

正则表达式元字符 和限定字符

<br />正则表达式元字符 <br />正则表达式语言由两种基本字符类型组成:原义(正常)文本字符和元字符。元字符使正则表达式具有处理能力。元字符既可以是放在 [] 中的任意单个字符(如 [a] 表示匹配单个小写字符 a ),也可以是字符序列(如 [a-d] 表示匹配 a 、 b 、 c 、 d 之间的任意一个字符,而 /w 表示任意英文字母和数字及下划线),下面是一些常见的元字符: <br />元字符 <br /> 说明 <br /> <br />. <br /> 匹配除 /n 以外的任何字符(注意元字

sunny的专栏 2007

正则表达式

正则表达式 正则表达式是一种匹配输入文本的模式。.Net框架提供了允许这种匹配的正则表达式引擎。模式由一个或多个字符、运算符和结构组成 正则表达式的本质还是一个字符串 1.1 正则表达式概述 正则表达式语言是一种专门用于字符串处理的语言。它包含两个功能: 一组用于表示字符类型的转义代码 一个系统,在搜索操作中,它把子字符串和中间结果的各个部分组合起来 1.2正则表达式的作用 检索:通过正则表...

-_^汪洸*的博客 5505

Python的正则表达式(元字符、组合、经典表达、匹配函数)

正则表达式模块 re 字符使用详解 正则表达式,就是一个特殊的字符串。 本文包括正则表达式生成和使用两个部分: 正则表达式生成:字符的选用和组合(一、二、三、四) 正则表达式使用:拿生成的正则表达式,去匹配一个字符串中包含该正则表达式的部分(五) 一、字符类型(组合正则表达式) 普通字符(非元字符):在匹配字符串是只与自己匹配 14个元字符:. ^ $ ? + * \ | [ ] { } ( ) (8+6) 通配符. 转义字符\ 选择字符| 集合字符 [^-] 重复字符 *+?{,} 括号()

weixin_43899514的博客 1517

正则表达式 - 元字符

正则表达式 - 元字符简述元字符表三级目录 简述 正则表达式语言由两种基本字符类型组成:原义(正常)文本字符和元字符。元字符使正则表达式具有处理能力。所谓元字符就是指那些在正则表达式中具有特殊意义的专用字符,可以用来规定其前导字符(即位于元字符前面的字符)在目标对象中的出现模式。 元字符表 下表包含了元字符的完整列表以及它们在正则表达式上下文中的行为: 字符 描述 \ 将下一个字符标记为一个特殊字符、或一个原义字符、或一个 向后引用、或一个八进制转义符。例如,‘n’ 匹配字符 “n”。’\n

陈家老二的博客 400

正则表达式二:正则表达式元字符

二、正则表达式元字符 正则表达式由两种基本字符类型组成:普通文本字符和元字符。元字符使正则表达式具有处理能力。所谓元字符就是指那些在正则表达式中具有特殊意义的专用字符,可以用来规定其前导字符(即位于元字符前面的字符)在目标对象中的出现模式。元字符是一个或一组代替一个或多个字符的字符。 根据功能元字符可分分类:字符匹配、匹配次数、定界符、分组及反向引用等。 1 字符匹配: 字符匹配的核心就是“[ ]”,匹配[]中任意一个字符,注意,只匹配一个字符。例如.[aoeiu]匹配任意一个元音字母,[0-9].

zsmcdut的博客 898

系统地学习正则表达式(一):基础篇

1. 什么是正则表达式正则表达式就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,用来表达对字符串的一种过滤逻辑。通过正则表达式可以达到如下的...

人生代码 ---- 公众号 2394

正则表达式3(使用元字符)

元字符在正则表达式里有特殊的含义,所以字符无法用来代表他们本身,比如:

jason_cdd的博客 248

04.使用元字符 (Python)

元字符是一些在正则表达式里有着特殊含义的字符。英文句号.是一个元字符,它可以匹配任意单个字符。左方括号[也是一个元字符,它标志着一个字符集合的开始。因为元字符有着特殊的含义,所以这些字符就无法用来代表它们本身。...

qq_40734247的博客 928

Linux学习之正则表达式元字符和grep命令

正则表达式是一种搜索字符串的模式,通俗点理解,也就是普通字符和元字符共同组成的字符集合匹配模式。正则表达式的主要作用是文本搜索和字符串处理。元字符就是一些具有特殊含义的字符,用于表示某种特定的字符类型或者行为,它的含义就不是显示在计算机上的含义了。此文章为8月Day 4学习笔记,内容来源于极客时间。看到操作系统的版本是。

qq_42108074的博客 1346

java 元字符_正则表达式常用元字符整理小结

正则表达式元字符和普通字符:根据正则表达式语法规则,正则表达式的匹配模式是由一系列的字符构成的。一.普通字符:大多数的字符仅能够描述它们本身,这些字符称作普通字符,例如所有的字母和数字。也就是说普通字符只能够匹配字符串中与它们相同的字符。二.元字符:由于普通字符只能匹配与自身相同的字符,那么正则表达式的灵活性和强大的匹配功能就不能够完全展现,于是正则表达式中还规定了一系列的特殊字符,这些特殊字符不...

weixin_39636645的博客 539
上一篇: 利用字符集合区间的正则表达(二)
下一篇: Mysql 数据库和数据表结构的基本操作
崔凯洋
博客等级 码龄6年 26粉丝 132原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值