当前位置: 首页 > news >正文

做外汇网站/长春网站推广排名

做外汇网站,长春网站推广排名,泰安房产交易网官网,自助式建站平台以下是 Python 正则表达式常用特殊字符及其含义 的全面整理,涵盖了常见和重要的正则符号,以及它们的示例,适合用来写博客或学习使用: Python 正则表达式常用特殊字符及其含义 1. . (点号) 含义:匹配除换行符 \n 以外…

以下是 Python 正则表达式常用特殊字符及其含义 的全面整理,涵盖了常见和重要的正则符号,以及它们的示例,适合用来写博客或学习使用:


Python 正则表达式常用特殊字符及其含义

1. . (点号)

  • 含义:匹配除换行符 \n 以外的任意单个字符。
  • 示例
    import re
    pattern = r"a.b"
    print(re.match(pattern, "acb"))  # 匹配成功,"a.b" 中间任意字符
    print(re.match(pattern, "a\nb")) # 不匹配,中间是换行符
    

2. ^ (脱字符)

  • 含义:匹配字符串的开头。
  • 示例
    pattern = r"^Hello"
    print(re.match(pattern, "Hello world"))  # 匹配成功
    print(re.match(pattern, "world Hello"))  # 不匹配
    

3. $ (美元符)

  • 含义:匹配字符串的结尾。
  • 示例
    pattern = r"world$"
    print(re.search(pattern, "Hello world"))  # 匹配成功
    print(re.search(pattern, "Hello world!")) # 不匹配
    

4. * (星号)

  • 含义:匹配前面的字符零次或多次。
  • 示例
    pattern = r"ab*"
    print(re.match(pattern, "a"))     # 匹配成功,b 出现零次
    print(re.match(pattern, "abbb"))  # 匹配成功,b 出现多次
    

5. + (加号)

  • 含义:匹配前面的字符一次或多次。
  • 示例
    pattern = r"ab+"
    print(re.match(pattern, "ab"))    # 匹配成功,b 出现一次
    print(re.match(pattern, "a"))     # 不匹配,至少需要一个 b
    

6. ? (问号)

  • 含义:匹配前面的字符零次或一次。
  • 示例
    pattern = r"ab?"
    print(re.match(pattern, "a"))     # 匹配成功,b 出现零次
    print(re.match(pattern, "ab"))    # 匹配成功,b 出现一次
    print(re.match(pattern, "abb"))   # 不匹配,b 出现两次
    

7. {n}, {n,}, {n,m} (量词限定符)

  • 含义
    • {n}:匹配前一个字符恰好 n 次。
    • {n,}:匹配至少 n 次。
    • {n,m}:匹配至少 n 次,至多 m 次。
  • 示例
    pattern = r"ab{2,4}"
    print(re.match(pattern, "abb"))     # 匹配成功,b 出现 2 次
    print(re.match(pattern, "abbbb"))   # 不匹配,b 超过 4 次
    

8. [...] (字符类)

  • 含义:匹配方括号内的任意字符。
    • [a-z]:表示范围,匹配从 az 的任意字符。
    • [^...]:取反,匹配不在方括号内的任意字符。
  • 示例
    pattern = r"[aeiou]"
    print(re.match(pattern, "apple"))   # 匹配成功,匹配元音字母 'a'pattern2 = r"[^aeiou]"
    print(re.match(pattern2, "hello"))  # 匹配 'h',不是元音字母
    

9. - (连字符/减号)

  • 含义:在字符类中,表示范围。
    • [a-z]:从 az
    • [A-Z]:从 AZ
    • [-]:如果 - 出现在开头或结尾,匹配减号本身。
  • 示例
    pattern = r"[a-z0-9]"
    print(re.match(pattern, "5"))       # 匹配成功,数字在范围内
    print(re.match(pattern, "g"))       # 匹配成功,字母在范围内
    

10. | (管道符)

  • 含义:表示逻辑 "或",匹配左边或右边的规则。
  • 示例
    pattern = r"cat|dog"
    print(re.match(pattern, "cat"))    # 匹配成功
    print(re.match(pattern, "dog"))    # 匹配成功
    

11. () (分组和捕获)

  • 含义:将多个字符作为一个整体进行匹配,并捕获组内容。
  • 示例
    pattern = r"(ab)+"
    print(re.match(pattern, "abab"))    # 匹配成功
    

12. \ (反斜杠)

  • 含义:用于转义特殊字符,或表示特殊的匹配序列。
    • \d:匹配数字 [0-9]
    • \s:匹配空白字符(如空格、制表符)。
    • \w:匹配字母、数字和下划线 [a-zA-Z0-9_]
    • \D\S\W:与上述序列的反义。
  • 示例
    pattern = r"\d+"
    print(re.match(pattern, "12345"))   # 匹配成功
    print(re.match(pattern, "abc"))     # 不匹配
    

13. \b\B (单词边界)

  • \b:匹配单词边界。
  • \B:匹配非单词边界。
  • 示例
    pattern = r"\bcat\b"
    print(re.search(pattern, "a cat sat"))    # 匹配成功,完整的单词 'cat'pattern2 = r"cat\B"
    print(re.search(pattern2, "concatenate")) # 匹配成功,'cat' 后非边界
    

14. 零宽断言 (Lookaround)

  • (?=...):正向肯定预查。
  • (?!...):正向否定预查。
  • (?<=...):后向肯定预查。
  • (?<!...):后向否定预查。
  • 示例
    pattern = r"(?<=\$)\d+"
    print(re.search(pattern, "价格是$100"))  # 匹配 '100',不包括 '$'
    

15. 命名组和引用

  • (?P<name>...):定义命名分组。
  • (?P=name):引用命名分组。
  • 示例
    pattern = r"(?P<number>\d+)\s+(?P=number)"
    print(re.match(pattern, "123 123"))  # 匹配两个相同的数字
    

以上内容全面涵盖了 Python 正则表达式中的常用特殊字符及其含义,并结合示例展示了每个符号的实际用法,适合用于博客或深入学习。

相关文章:

Python 正则表达式常用特殊字符及其含义

以下是 Python 正则表达式常用特殊字符及其含义 的全面整理&#xff0c;涵盖了常见和重要的正则符号&#xff0c;以及它们的示例&#xff0c;适合用来写博客或学习使用&#xff1a; Python 正则表达式常用特殊字符及其含义 1. . (点号) 含义&#xff1a;匹配除换行符 \n 以外…...

Uniapp Android SpringBoot3 对接支付宝支付(最新教程附源码)

Uniapp Android SpringBoot3 对接支付宝支付&#xff08;最新教程附源码&#xff09; 1、效果展示2、后端实现2.1 引入支付宝SDK依赖 pom.xml2.2 配置 application.yml2.3 支付宝相关代码2.3.1 AlipayConfig.java2.3.2 ZfbPayConfig.java2.3.3 支付接口2.3.4 支付回调处理接口&…...

SQL DML 语句

CREATE TABLE classes (ClassID varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT 班级ID,ClassName varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT 班级名称,TeacherID varchar(20) CHARACTER SET utf8mb4…...

饲料颗粒机全套设备有哪些机器组成

颗粒饲料机主要用于将各种饲料原料&#xff08;如玉米、豆粕、麦麸、鱼粉等&#xff09;进行混合、压制&#xff0c;制成颗粒状的饲料。这种饲料不仅方便储存和运输&#xff0c;还能提高动物的采食效率和饲料利用率。同时&#xff0c;颗粒饲料在加工过程中能灭部分微生物和寄生…...

MySQL事务与锁

定义一个事务向d_eams数据库的student表中插入3条记录&#xff0c;并检验若插入相同的学号&#xff0c;则回滚事务&#xff0c;既插入无效&#xff0c;否则成功提交 delimiter $$ create procedure tr_proc() begindeclare continue handler for sqlstate 23000beginrollback;…...

汽车免拆案例 | 2007款宝马650i车发动机偶尔无法起动

故障现象 一辆2007款宝马650i车&#xff0c;搭载N62B48B发动机&#xff0c;累计行驶里程约为26万km。车主反映&#xff0c;发动机偶尔无法起动&#xff0c;故障频率较低&#xff0c;十几天出现1 次&#xff0c;且故障出现时起动机不工作。 故障诊断  接车后试车&#xff0c;…...

PostgreSQL和Oracle的sql差异

PostgreSQL和Oracle的sql差异 1.rownum &#xff08;1&#xff09;Oracle分页查询使用rownum&#xff0c;PostgreSQL使用limit offset ORACLEPOSTGRESQLselect * from (select rownum r,e.* from emp e where rownum <5) t where r>0;select * from emp limit 5 offset…...

SpringMvc完整知识点二(完结)

SpringMVC获取请求参数 环境准备工作等均省略&#xff0c;可详见快速入门&#xff0c;此处只写非共有部分代码 该部分示例项目SpringMvcThree已上传至Gitee&#xff0c;可自行下载 客户端请求参数的格式为&#xff1a;namevalue&passwordvalue... ... 服务端想要获取请求…...

29 - Java Serializable 序列化

Java的Serializable接口是Java序列化机制的核心&#xff0c;它允许一个对象的状态被转换为字节流&#xff0c;从而可以方便地进行存储或传输。 序列化后的对象可以被写到数据库、存储到文件系统&#xff0c;或者通过网络传输。 要在 Java 中使一个类可序列化&#xff0c;你需要…...

59 基于STM32的烟雾、红外、温湿度检测

所有仿真详情导航: PROTEUS专栏说明-CSDN博客 目录 一、主要功能 二、硬件资源 三、主程序编程 四、资源下载 一、主要功能 基于SMT32F103C8T6单片机,采用DHT11检测温湿度,采用光敏电阻检测光照,采用滑动变阻器分别模拟红外、烟雾,通过OLED显示屏显示,如果湿度过低…...

使用Excel 对S型曲线加减速算法进行仿真

项目场景&#xff1a; 项目场景&#xff1a;代码中写了S型加减速算法&#xff0c;相查看生成的加减速数组&#xff0c;直观的展示出来&#xff0c;USB通信一次64字节&#xff0c;对于我几个个32位的频率值不太方便&#xff0c;于是采用Excel进行仿真。 代码中如何生成S加减速曲…...

flink-connector-mysql-cdc:01 mysql-cdc础配置代码演示

flink-connector-mysql-cdc&#xff1a; 01 mysql-cdc基础配置代码演示02 mysql-cdc高级扩展03 mysql-cdc常见问题汇总04 mysql-cdc-kafka生产级代码分享05 flink-kafka-doris生产级代码分享06 flink-kafka-hudi生产级代码分享 flink-cdc版本&#xff1a;3.2.0 flink版本&…...

java计算机毕设课设—进销存管理系统(附源码、文章、相关截图、部署视频)

这是什么系统&#xff1f; 资源获取方式再最下方 java计算机毕设课设—进销存管理系统(附源码、文章、相关截图、部署视频) 一、项目简介 项目名称&#xff1a; 基于Java的进销存管理系统 开发背景&#xff1a; 在现代企业管理中&#xff0c;库存管理是核心环节之一&#…...

鸿蒙UI开发——渐变色效果

1、概 述 ArkTs可以通过颜色渐变接口&#xff0c;设置组件的背景颜色渐变效果&#xff0c;实现在两个或多个指定的颜色之间进行平稳的过渡。 目前提供三种渐变类型&#xff1a;线性渐变、角度渐变、径向渐变。 我们在鸿蒙UI布局实战 —— 个人中心页面开发中&#xff0c;默认…...

嵌入式硬件设计 — 智能设备背后的隐形架构大师

目录 引言 一、嵌入式硬件设计概述 &#xff08;一&#xff09;需求分析 &#xff08;二&#xff09;硬件选型 &#xff08;三&#xff09;电路设计 &#xff08;四&#xff09;PCB 制作与焊接 &#xff08;五&#xff09;硬件调试与测试 &#xff08;六&#xff09;软…...

QNX的系统资源访问机制

资料参考: QNX官网文档 在QNX中,一些系统的资源默认是无法访问的,或者可访问的范围过大,导致产生不可控的危险,此时便需要对系统资源进行访问限制 接口如下 #include <sys/rsrcdbmgr.h> #include <sys/rsrcdbmsg.h>int rsrcdbmgr_create(...

高校数字化运营平台解决方案:构建统一的服务大厅、业务平台、办公平台,助力打造智慧校园

教育数字化是建设教育强国的重要基础&#xff0c;利用技术和数据助推高校管理转型&#xff0c;从而更好地支撑教学业务开展。 近年来&#xff0c;国家多次发布政策&#xff0c;驱动教育行业的数字化转型。《“十四五”国家信息化规划》&#xff0c;推进信息技术、智能技术与教育…...

多模态大型语言模型MM-1.5采用数据驱动的方法,通过不断优化数据组合提高模型性能

多模态大型语言模型MM-1.5采用数据驱动的方法&#xff0c;通过不断优化数据组合提高模型性能 MM-1.5模型的设计核心在于其数据驱动的方法&#xff0c;这意味着模型的性能在很大程度上取决于所使用的数据类型和组合。这种方法的实施细节可以从以下几个方面来展开&#xff1a; …...

16 设计模式之适配器模式(充电器转换案例)

一、适配器模式的定义 适配器模式&#xff08;Adapter Pattern&#xff09;是一种结构型设计模式&#xff0c;常用于解决接口不兼容的问题。适配器模式通过引入一个“适配器”类&#xff0c;将一个接口转化为客户端期望的另一种接口&#xff0c;使得原本因接口不兼容而无法交互…...

基于Java Springboot在线招聘APP且微信小程序

一、作品包含 源码数据库设计文档万字PPT全套环境和工具资源部署教程 二、项目技术 前端技术&#xff1a;Html、Css、Js、Vue、Element-ui 数据库&#xff1a;MySQL 后端技术&#xff1a;Java、Spring Boot、MyBatis 三、运行环境 开发工具&#xff1a;IDEA/eclipse 微信…...

多组学数据如何发表高分SCI论文,以RNA-Seq数据为例

随着高通量测序以及生物信息学的发展&#xff0c;R语言在生物大数据分析以及数据挖掘中发挥着越来越重要的作用。想要成为一名优秀的生物数据分析者与科研团队不可或缺的人才&#xff0c;除了掌握对生物大数据挖掘与分析技能之外&#xff0c;还要具备一定的统计分析能力与SCI论…...

Qt Designer Ui设计 功能增加

效果展示 输入密码&#xff0c;密码错误&#xff0c;弹出提示 密码正确&#xff0c;弹出提示并且关闭原窗口 代码&#xff08;只提供重要关键主代码&#xff09;lxh_log.py代码&#xff1a; import sysfrom PySide6.QtWidgets import QApplication, QWidget, QPushButtonfrom …...

【Android学习】2024最新版Android Studio安装与配置

准备工作 Windows系统的要求 一、下载 Android Studio官网&#xff1a;https://developer.android.google.cn/studio?hlen 今天是2024年9月27日&#xff0c;Android Studio已经更新到了Koala版本 直接下载 二、安装 笔者当前环境变量中配置的JDK版本为1.8 双击.exe文件运行…...

RabbitMQ延时队列

RabbitMQ延时队列 什么是延时队列 延时队列顾名思义&#xff0c;即放置在该队列里面的消息是不需要立即消费的&#xff0c;而是等待一段时间之后取出消费。 应用场景 场景一&#xff1a;在订单系统中&#xff0c;一个用户下单之后通常有30分钟的时间进行支付&#xff0c;如…...

a8204 基于微信小程序的音乐播放器微信小程序的研究与实现 服务器端Java+Mysql+Servlet 文档 源码

音乐播放微信小程序 1.项目描述2. 绪论3.项目功能4.界面展示5.源码获取 1.项目描述 随着科技的发展&#xff0c;手机在我们生活中起到了重要的作用。软件作为手机重要的一部分&#xff0c;用户体验显得尤为重要。微信小程序一起操作便捷、用户基数大、分享便利、既用即走等特点…...

游戏新纪元:用栈记录数据,轻松实现悔棋功能

游戏介绍 嘿&#xff0c;各位游戏爱好者们&#xff01;今天我要给大家介绍一款颠覆传统、创新十足的游戏项目。这款游戏不仅让你沉浸在紧张刺激的游戏世界中&#xff0c;还引入了前所未有的两大特色功能&#xff1a;记录游戏数据和轻松实现悔棋。 首先&#xff0c;让我们来聊…...

C/C++基础知识复习(36)

函数重载是指在同一作用域内&#xff0c;定义多个同名但参数列表不同的函数。通过函数重载&#xff0c;程序员可以使用相同的函数名称处理不同类型或数量的参数&#xff0c;而不需要为每种情况创建不同的函数名称。编译器根据函数调用时传递的参数类型和数量来决定调用哪个版本…...

JAVA |日常开发中连接Sqlite数据库详解

JAVA &#xff5c;日常开发中连接Sqlite数据库详解 前言一、SQLite 数据库概述1.1 定义与特点1.2 适用场景 二、Java 连接 SQLite 数据库的准备工作2.1 添加 SQLite JDBC 驱动依赖2.2 了解 JDBC 基础概念 三、建立数据库连接3.1 代码示例3.2 步骤解析 四、执行 SQL 语句4.1 创建…...

Java项目实战II基于微信小程序的消防隐患在线举报系统(开发文档+数据库+源码)

目录 一、前言 二、技术介绍 三、系统实现 四、核心代码 五、源码获取 全栈码农以及毕业设计实战开发&#xff0c;CSDN平台Java领域新星创作者&#xff0c;专注于大学生项目实战开发、讲解和毕业答疑辅导。获取源码联系方式请查看文末 一、前言 随着城市化进程的加快&…...

python编程Day12-属性和方法的分类

私有和公有 在python中 定义类的时候&#xff0c;可以给 属性和方法设置 访问权限&#xff0c;即规定在什么地方可以使用。 权限一般分为两种&#xff1a;公有权限、私有权限 公有权限 定义&#xff1a;直接定义的属性和方法就是公有的特点&#xff1a; 可以在任何地方访问和使…...