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

正则表达式的基本知识

正则表达式是一种用于匹配和操作字符串的强大工具。它是由一系列字符和特殊符号组成的模式,可以用来检查字符串是否符合某种模式,进行匹配、替换、提取等操作。

下面是一些常见的正则表达式元字符和语法:

1. 字符匹配:
   - 普通字符:匹配其本身,例如字符`a`匹配字符串中的`a`。
   - 元字符`.`:匹配任意单个字符(换行符除外)。
   - 字符类`[]`:匹配字符类中的任意一个字符,例如`[abc]`匹配`a`、`b`或`c`。
   - 边界匹配符`^`和`$`:匹配字符串的开始和结束位置。

2. 量词:
   - `*`:匹配前一个元素零次或多次。
   - `+`:匹配前一个元素一次或多次。
   - `?`:匹配前一个元素零次或一次。
   - `{n}`:匹配前一个元素恰好n次。
   - `{n,}`:匹配前一个元素至少n次。
   - `{n,m}`:匹配前一个元素至少n次且不超过m次。

3. 特殊字符:
   - 转义字符`\`:用于转义特殊字符,例如`\.`匹配`.`字符本身。
   - `\d`:匹配任意一个数字字符,相当于`[0-9]`。
   - `\w`:匹配任意一个字母数字字符或下划线,相当于`[a-zA-Z0-9_]`。
   - `\s`:匹配任意一个空白字符。
   - `\b`:匹配单词的边界位置。

4. 分组和捕获:
   - `()`:用于创建捕获组,并且可以对分组进行匹配和捕获。
   - `(?:)`:用于创建非捕获组,只用于分组而不进行捕获。

5. 其他:
   - `|`:匹配两个或多个选择之一,类似于逻辑上的或。
   - `(?i)`:在括号内开启大小写不敏感匹配。
   - `(?m)`:在括号内开启多行模式。

常用的类包括`Pattern`和`Matcher`。可以使用`Pattern.compile(String regex)`方法编译正则表达式,并使用`Matcher`类的方法进行匹配和操作。

例如,下面是一个简单的Java代码示例,用于检查某个字符串是否符合正则表达式的模式:

import java.util.regex.*;String regex = "[a-z]+";
String input = "example123";Pattern pattern = Pattern.compile(regex);
Matcher matcher = pattern.matcher(input);if (matcher.matches()) {System.out.println("匹配成功");
} else {System.out.println("匹配失败");
}

这个例子中,正则表达式`[a-z]+`用于匹配由一个或多个小写字母组成的字符串。如果`input`字符串符合该模式,则输出"匹配成功",否则输出"匹配失败"。

相关文章:

正则表达式的基本知识

正则表达式是一种用于匹配和操作字符串的强大工具。它是由一系列字符和特殊符号组成的模式,可以用来检查字符串是否符合某种模式,进行匹配、替换、提取等操作。 下面是一些常见的正则表达式元字符和语法: 1. 字符匹配: - 普通…...

如何⽤webpack 来优化前端性能

如何⽤webpack 来优化前端性能? ⽤webpack 优化前端性能是指优化 webpack 的输出结果,让打包的最终结果在浏览器运⾏快速⾼效。 压缩代码:删除多余的代码、注释、简化代码的写法等等⽅式。可以利⽤webpack的 UglifyJsPlugin 和 ParallelUgl…...

人机交互中的混合多重反馈

人机交互中态、势、感、知的混合多重反馈是指在交互过程中综合运用不同方面的反馈信息,包括用户态度(态)、行为动势(势)、情感体验(感)和认知反馈(知)。这种多重反馈可以…...

CSS:服务器字体 与 响应式布局(用法 + 例子 + 效果)

文章目录 服务器字体定义 服务器字体使用例子 响应式布局设备类型设备特性例子 服务器字体 解决字体不一致而产生的。 首先,在网上把字体下载好。 定义 服务器字体 font-face{font-family:字体名称;src:url(字体资源路径); }使用 在需要使用的选择器里加上 font…...

24届近3年上海电力大学自动化考研院校分析

今天给大家带来的是上海电力大学控制考研分析 满满干货~还不快快点赞收藏 一、上海电力大学 学校简介 上海电力大学(Shanghai University of Electric Power),位于上海市,是中央与上海市共建、以上海市管理为主的全日…...

PostgreSQL查询慢sql原因和优化方案

PostgreSQL sql查询慢优化方案有一下几种解决方案: 1.关闭会话 查询慢sql的执行会话,关闭进程。 查看数据库后台连接进程 SELECT count(*) FROM pg_stat_activity;SELECT * FROM pg_stat_activity; 查看数据库后台连接进程,但是此条SQL不…...

Leetcode 21. 合并两个有序链表

题目描述 题目链接:https://leetcode.cn/problems/merge-two-sorted-lists/description/ 思路 两个链表都是升序链表,新建一个链表,引入伪头节点作为辅助节点,将各节点添加到伪节点之后,再用一个cur节点指向新链表的…...

[tool] Ubuntu 设置开机启动python脚本

前言: 话说我每次设置的服务器,再次开机,ip都会随之改变,固定ip有时候确定不好用。所以为啥不让让每次启动都发送ip给我呢。 步骤: sudo touch /etc/rc.local sudo chmod 777 /etc/rc.local sudo systemctl enable rc-local.se…...

「何」到底该读「なん」还是「なに」?柯桥学日语

「何」到底该读「なん」还是「なに」? 首先,讲一个规律,大家记住就行。当「何」后面所接单词的第一个发音在“た”、“だ”、“な”行时,读作“なん”。一般这种情况下,后面跟的是の、でも、です和だ。 用例&#xff…...

github - 创建组织-Team

地址记录: github创建组织(organization) - 知乎...

【Transformer】自注意力机制Self-Attention | 各种网络归一化Normalization

1. Transformer 由来 & 特点 1.1 从NLP领域内诞生 "Transformer"是一种深度学习模型,首次在"Attention is All You Need"这篇论文中被提出,已经成为自然语言处理(NLP)领域的重要基石。这是因为Transfor…...

沁恒ch32V208处理器开发(四)串口通信

目录 串口资源资源配置同步模式单线半双工模式中断DMA 串口的初始化串口通信的实现 串口资源 资源配置 CH32V208 系列,是基于 RISC-V 指令架构设计的 32 位 RISC 内核 MCU,根据封装的不同,可用的USART串口资源如下表所示: 且US…...

【BASH】回顾与知识点梳理(十八)

【BASH】回顾与知识点梳理 十八 十八. 条件判断式18.1 利用 test 指令的测试功能文件类型判断文件权限侦测两个文件之间的比较两个整数之间的判定判定字符串的数据多重条件判定 18.2 利用判断符号 [ ]18.3 Shell script 的默认参数($0, $1...)shift:造成参数变量号码…...

linux 目录操作命令

目录操作命令 文件列表 ls命令文件列表 ls [选项] [参数]-------------------------------l 详细信息-L 紧接着符号性连接,列出它们指向的文件-a 所有文件,包含隐藏文件(以点号起始的文件)-A 与-a相同,但是不会列出来. 和 ..-c 根据创建时间排…...

React Dva项目小优化之redux-action

之前 我们讲过 models 接下啦 我们来给大家讲一个新的库 这个库的话 有最好 没有影响也不大 它主要是帮助我们处理 action的 我们直接在 GitHub 官网上搜索 redux-action 我们搜出来 第一个就是 从星数来看 还是非常优秀的 我们拉下来 找到这个Documentation 然后点击进去 进…...

Kotlin反射访问androidx.collection.LruCache类私有变量

Kotlin反射访问androidx.collection.LruCache类私有变量 androidx.collection.LruCache类中定义了一个名为map的LinkedHashMap,map存储了所有LruCache的数据,有时候需要遍历访问该LinkedHashMap,取出里面的值,但是LruCache代码实…...

高级进阶多线程——多任务处理、线程状态(生命周期)、三种创建多线程的方式

Java多线程 Java中的多线程是一个同时执行多个线程的进程。线程是一个轻量级的子进程,是最小的处理单元。多进程和多线程都用于实现多任务处理。 但是,一般使用多线程而不是多进程,这是因为线程使用共享内存区域。它们不分配单独的内存区域…...

【 K8S 】 Pod 进阶

目录 //资源限制官网示例:重启策略 //健康检查:又称为探针(Probe) //资源限制 当定义 Pod 时可以选择性地为每个容器设定所需要的资源数量。 最常见的可设定资源是 CPU 和内存大小,以及其他类型的资源。 当为 Pod 中…...

众和转债,宏微转债,阳谷转债上市价格预测

众和转债 基本信息 转债名称:众和转债,评级:AA,发行规模:13.75亿元。 正股名称:新疆众和,今日收盘价:8.14元,转股价格:8.2元。 当前转股价值 转债面值 / 转股…...

MySQL~事务的四大特性和隔离级别

事务的四大特性 1.原子性:一个事务(transaction)中的所有操作,要么全部完成,要么全部不完成。事务在执行过程中发生错误,会被回滚(Rollback)到事务开始前的状态,就像这个…...

AI-调查研究-01-正念冥想有用吗?对健康的影响及科学指南

点一下关注吧!!!非常感谢!!持续更新!!! 🚀 AI篇持续更新中!(长期更新) 目前2025年06月05日更新到: AI炼丹日志-28 - Aud…...

TDengine 快速体验(Docker 镜像方式)

简介 TDengine 可以通过安装包、Docker 镜像 及云服务快速体验 TDengine 的功能,本节首先介绍如何通过 Docker 快速体验 TDengine,然后介绍如何在 Docker 环境下体验 TDengine 的写入和查询功能。如果你不熟悉 Docker,请使用 安装包的方式快…...

java 实现excel文件转pdf | 无水印 | 无限制

文章目录 目录 文章目录 前言 1.项目远程仓库配置 2.pom文件引入相关依赖 3.代码破解 二、Excel转PDF 1.代码实现 2.Aspose.License.xml 授权文件 总结 前言 java处理excel转pdf一直没找到什么好用的免费jar包工具,自己手写的难度,恐怕高级程序员花费一年的事件,也…...

Linux相关概念和易错知识点(42)(TCP的连接管理、可靠性、面临复杂网络的处理)

目录 1.TCP的连接管理机制(1)三次握手①握手过程②对握手过程的理解 (2)四次挥手(3)握手和挥手的触发(4)状态切换①挥手过程中状态的切换②握手过程中状态的切换 2.TCP的可靠性&…...

Linux云原生安全:零信任架构与机密计算

Linux云原生安全:零信任架构与机密计算 构建坚不可摧的云原生防御体系 引言:云原生安全的范式革命 随着云原生技术的普及,安全边界正在从传统的网络边界向工作负载内部转移。Gartner预测,到2025年,零信任架构将成为超…...

vue3 定时器-定义全局方法 vue+ts

1.创建ts文件 路径&#xff1a;src/utils/timer.ts 完整代码&#xff1a; import { onUnmounted } from vuetype TimerCallback (...args: any[]) > voidexport function useGlobalTimer() {const timers: Map<number, NodeJS.Timeout> new Map()// 创建定时器con…...

ardupilot 开发环境eclipse 中import 缺少C++

目录 文章目录 目录摘要1.修复过程摘要 本节主要解决ardupilot 开发环境eclipse 中import 缺少C++,无法导入ardupilot代码,会引起查看不方便的问题。如下图所示 1.修复过程 0.安装ubuntu 软件中自带的eclipse 1.打开eclipse—Help—install new software 2.在 Work with中…...

零基础在实践中学习网络安全-皮卡丘靶场(第九期-Unsafe Fileupload模块)(yakit方式)

本期内容并不是很难&#xff0c;相信大家会学的很愉快&#xff0c;当然对于有后端基础的朋友来说&#xff0c;本期内容更加容易了解&#xff0c;当然没有基础的也别担心&#xff0c;本期内容会详细解释有关内容 本期用到的软件&#xff1a;yakit&#xff08;因为经过之前好多期…...

华硕a豆14 Air香氛版,美学与科技的馨香融合

在快节奏的现代生活中&#xff0c;我们渴望一个能激发创想、愉悦感官的工作与生活伙伴&#xff0c;它不仅是冰冷的科技工具&#xff0c;更能触动我们内心深处的细腻情感。正是在这样的期许下&#xff0c;华硕a豆14 Air香氛版翩然而至&#xff0c;它以一种前所未有的方式&#x…...

基于Java+MySQL实现(GUI)客户管理系统

客户资料管理系统的设计与实现 第一章 需求分析 1.1 需求总体介绍 本项目为了方便维护客户信息为了方便维护客户信息&#xff0c;对客户进行统一管理&#xff0c;可以把所有客户信息录入系统&#xff0c;进行维护和统计功能。可通过文件的方式保存相关录入数据&#xff0c;对…...