正则表达式入门

SMIC Memory配置与Library Compiler实战:从lib到db的高效转换 本文详细介绍了SMIC Memory Compiler的配置要点与使用Library Compiler将.lib文件高效转换为.db文件的完整流程。文章深入解析了关键配置参数对性能和面积的影响,并提供了从交互式操作到自动化脚本的实战指南,帮助数字芯片设计工程师顺利完成存储器模型的生成与集成,确保Design Compiler能正确调用。 阅读详情

本文是根据大神的文章做的笔记,原文点这里

metacharacter(元字符):

\b : 匹配一个位置(单词的开始或结束) 如:\bhi\b会精确的匹配到hi这个单词
.  : 匹配除换行符以为的任意字符
*  : 代表数量,指定前边的内容可以连续重复使用任意次以使整个表达式得到匹配  如:\bhi\b.*\bLucy\b意思是先一个单词hi然后是任意个字符(但是不能是换行),最后是Lucy这个单词
\d  : 匹配一位数字(0或1或2...)如 :0\d\d\d-\d\d\d\d\d\d\d\d意思是0开头,然后是2个数字,然后是一个连字符“-”,最后是8个数字。也可以这样写0\d{2}-\d{8}这里{2}{8}的意思是前边的\d必须连续匹配2次(8次)
\s  : 匹配任意空白符,包括空格,制表,换行,中文全角空格等
\w  : 匹配字母或数字或下划线或汉字等。
    栗子:\ba\w*\b意思是,以字母a开头的单词----显示某个单词开始处(\b),然后是字母a,然后是任意数量的字母或数字(\w*),最后是单词结束处(\b)
正则表达式里边的一个单词:就是不少于一个连续的\w
+  : 表示数量,类似*,但是+代表前边的内容重复1次或多次,*是0次或多次 如:\d+匹配一个或更多连续的数字;\b\w{6}\b匹配刚好6个字符的单词
^  : 匹配字符串的开始
$  : 匹配字符串的结束
    ^和$都匹配一个位置,这与\b类似。^用来匹配你要查找的字符串的开头,$匹配结尾。如:^\d{5,12}$匹配5到12位数字({5,12}代表匹配次数不能少于5不能多于12)

数量限定符:
*  : 重复0次或更多次
+  : 重复1次或更多次
?  : 重复0次或1次
{n}: 重复次
{n,}: 重复n次或更多次
{n,m}: 重复不少于n次不多于m次

转义字符:
\  : 如果你想查找元字符本身或者\本身就给使用"\",如:\.和\*和\\

字符类:
[]  : 匹配“[]”内列出的任何一个元素,如: [aeiou]匹配aeiou中的任何一个;[.?!]匹配匹配标点符号“.”或“?”或“!”;[0-9]匹配的含义与\d就完全一样,都匹配一个数字

下面是一个更复杂的表达式:\(?0\d{2}[) -]?\d{8}。
这个表达式可以匹配几种格式的电话号码,像(010)88886666,或022-22334455, 或02912345678等。我们对它进行一些分析吧:首先是一个转义字符\(,它能出现0次或1次(?),然后是一个0,后面跟着2个数字(\d{2}),然后是)或-或空格中 的一个,它出现1次或不出现(?),最后是8个数字(\d{8})。

“(”和“)”也是元字符,所以在这里需要使用转义。

分支条件:
分支条件指的是正则表达式中有多种规则,如果满足其中一种都应当完成匹配,具体方法是用“|”将不同的规则分隔开。(有点类似或操作符)。如:\d{5}-\d{4}|\d{5}这个匹配美国的邮编,五位数字或者连字号隔开的9位数字。很简单但是要注意: 条件的顺序也是很重要的,如果改成\d{5}|\d{4}-\d{5}那么只会匹配五位的邮编和九位邮编的前五位。也就是分支条件将会从左到右测试每个条件,如果满足了某个分支就不会再管其他条件了。

反义:
有时需要查找不属于某个能简单定义的字符类的字符,如查找除了数字以外的其它任意字符,这时就要用到反义了。
\W  : 匹配任意不是字母,数字,下划线,汉子的字符
\S  : 匹配任意不是空白的字符
\D  : 匹配任意非数字的字符
\B  : 匹配不是单词开头或结束的位置
[^x]: 匹配除了x以外的任意字符
[^aeiou]: 匹配除了aeiou以外的任意字符

分组:
单个字符的重复直接加上限定符就可以实现,但是想重复多个字符又该怎么办?可以直接用小括号指定子表达式,然后就可以对这个子表达式添加限定符了。如:(\d{1,3}\.){3}\d{1,3}是一个简单的IP地址匹配表达式。要理解这个表达式,请按下列顺序分析它:\d{1,3}匹 配1到3位的数字,(\d{1,3}\.){3}匹 配三位数字加上一个英文句号(这个整体也就是这个分组)重 复3次,最后再加上一个一到三位的数字(\d{1,3})。但是这个正则会匹配256.300.888.999这种错误的ip,所以改进如下:((2[0-4]\d|25[0-5]|[01]?\d\d?)\.){3}(2[0-4]\d|25[0-5]|[01]?\d\d?)

向后引用:没写的同样的很重要,只是没必要原样copy过来,看这里

零宽断言:

负向零宽断言:

注释:

贪婪与懒惰:

懒惰限定符:
*?  : 重复任意次但尽可能少重复
+?  : 重复1次或多次,尽量少重复
??  : 重复0次或1次,尽量少重复
{n,m}? : 重复不少于n次不多于m次,尽量少重复
{n,}? : 重复n次以上,尽量少重复

在线编辑器: http://www.regexpal.com/

原文:http://www.oschina.net/question/12_9507?fromerr=726wchYs#alternative

关于正则表达式语言元素的MSDN在线文档:https://msdn.microsoft.com/zh-cn/library/az24scfc.aspx


 


Unity 工具 之 ZXing QRCode 二维码的生成和识别(可设置生成不同颜色的/带图标的二维码) Unity 基础 之 ZXing QRCode 二维码的生成和识别(可设置生成不同颜色的/带图标的二维码) 目录 Unity 基础 之 ZXing QRCode 二维码的生成和识别(可设置生成不同颜色的/带图标的二维码) 一、简单介绍 二、实现原理 三、注意实现 四、效果预览 五、ZXing.net ( zxing.unity.dll ) 插件下载 六、实现步骤 七、关键代码 一、简单介绍 Unity 开发中,自己整理的一些游戏开发可能用到的功能,整理归档,方便游... 阅读详情

相关推荐

SAP资产按每天折旧功能介绍

注意:此处在计算百分比时将30天作为剩余使用寿命,因为SAPS/4HANA中的计算是通过考虑购置第一年的折旧总天数来进行的。这是因为我在计算总使用寿命时只使用了365天,如果剩余使用寿命大于1年,SAPS/4HANA会将闰年规范化为365天。此功能仅对确定使用寿命或剩余寿命百分比的折旧键有用,如果需要,这种折旧到日的解决方案可以应用于需要每天计算折旧的跨行业(任何国家/行业)。注意:这里在计算百分比时考虑了2天,因为364天已经过期,但目前我们到达2024年,使用寿命为366天。它只会在下一年生效。

yanzibing99的博客 1562

正则表达式(全)

通过上面几个简单的示例,可以了解到常见的基础正则表达式的元字符主要包括以下几个^ 匹配输入字符串的开始位置。除非在方括号表达式中使用,表示不包含该字符集合。要匹配”^”字符本身,请使用"\^"$ 匹配输入字符串的结尾位置。如果设置了RegExp对象的 Multiline属性,则"$”也匹配'\n'或'\r’,。要匹配”$"字符本身,请使用”\$". 匹配除"\r\n"之外的任何单个字符\ 反斜杠,又叫转义字符,去除其后紧跟的元字符或通配符的特殊意义* 匹配前面的子表达式零次或多次。...

a_b_e_l_的博客 24万+

从赛题到实战:一份面向高职“区块链技术应用”赛项的食品溯源系统全栈部署与运维指南

本文为高职院校学生备战“区块链技术应用”技能大赛提供了一份详实的食品溯源系统全栈部署与运维指南。内容涵盖从理解赛题业务逻辑、绘制技术蓝图,到搭建4节点FISCO BCOS联盟链、部署管理平台与智能合约,再到核心运维技能与前后端联调测试的完整流程,旨在帮助参赛者将赛题转化为可运行的实战项目,全面提升区块链全栈开发与运维能力。

weixin_29172201的博客 687

最全常用正则表达式大全

一、校验数字的表达式 1. 数字:^[0-9]*$ 2. n位的数字:^\d{n}$ 3. 至少n位的数字:^\d{n,}$ 4. m-n位的数字:^\d{m,n}$ 5. 零和非零开头的数字:^(0|[1-9][0-9]*)$ 6. 非零开头的最多带两位小数的数字:^([1-9][0-9]*)+(.[0-9]{1,2})?$ 7. 带1-2位小数的正数或负数:^(\-)?\d+(\.\d{1,2})?$ 8. 正数、负数、和小数:^(\-|\+)?\d+(\.\d+)?$ 9. 有两

ligl的博客 11万+

大模型的安全发展与安全治理

2022 年底,OpenAI 推出的 ChatGPT 在文本生成领域实现了重大突破,引领了大模型技术的发展方向,推动了各式各样的基座大模型及行业大模型的发展,并逐步向多模态和具身化方向迅速演进。显然,大模型展现出的强大能力为人工智能通用化揭开了序幕。然而,大模型技术的安全性也面临着生成内容的安全性、伦理道德等重大挑战。只有积极确保大模型的安全性,才能更有效地推动其持续发展,进而更好地应对大模型技术变革所带来的机遇与挑战。

qq_41432686的博客 2584

13、使用 Mathematica 撰写文本

本文详细介绍了如何使用 Mathematica 进行文本撰写与处理。内容涵盖文本输入、格式设置、结构化排版、超链接插入、翻译与拼写检查工具的使用,以及将笔记本导出为多种格式(如 PDF、HTML、LATEX 和 RTF)的方法。通过实例演示了创建专业文档的完整流程,包括样式设置、公式推导、标题编号、页眉页脚配置等操作。适合希望利用 Mathematica 编写学术论文、技术报告或教学资料的用户参考。

sony5的博客 209

正则表达式(语法大全)

正则表达式语法大全,忘了多久写的了。。。。

Jeromeyoung 4万+

VCAST创建单元测试工程

选择工作目录,后面创建胡UT工程将会生成到这个目录。

qq_42851449的博客 2485

正则表达式详解

一、正则表达式概述 正则表达式是一组由字母和符号组成的特殊文本,它可以用来从文本中找出满足你想要的格式的句子。通俗的讲就是按照某种规则去匹配符合条件的字符串 一个正则表达式是一种从左到右匹配主体字符串的模式。 “Regular expression”这个词比较拗口,我们常使用缩写的术语“regex”或“regexp”。 正则表达式可以从一个基础字符串中根据一定的匹配模式替换文本中的字符串、...

m0_56312312的博客 5万+

15、z/OS 优化配置与迁移实践

本文详细探讨了z/OS环境的优化配置与迁移实践,涵盖DASD存储库管理、用户目录更新、环境更新意义以及不同场景下的迁移案例。通过单笔记本系统和服务器级机器的实例,展示了迁移流程和关键要点,包括DASD文件创建、设备映射更新、系统重启初始化以及数据备份等步骤。文章还总结了迁移过程中的注意事项,并展望了未来z/OS优化的发展趋势,为z/OS系统的稳定运行和高效管理提供了实用指导。

zzz56的博客 129

【BUG已解决】pip install 出现 error: Microsoft Visual C++ 14.0 or greater is required 解决方案

方案磁盘占用适用场景推荐指数安装Build Tools3-6GB长期Windows Python开发⭐⭐⭐⭐⭐寻找预编译wheel无额外占用只是想快速装上某个包⭐⭐⭐⭐⭐用conda安装视包而定已经在用conda环境⭐⭐⭐⭐⭐升级到新版本无额外占用库本身有更新的预编译版本⭐⭐⭐⭐使用WSL2需要额外配置Linux子系统频繁遇到Windows编译问题⭐⭐⭐⭐的核心是Windows 缺少本地 C/C++ 编译器,而目标包需要在本机编译。先看是否有捷径。

博客 1万+

正则表达式

正则表达式,又称规则表达式。(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本。 简单来说就是用一串特殊格式的字符来找到全部符合一定要求的字符串,也可以用字符串来匹配判断正则表达式。而搜索的方式可以理解为DFA或者NFA的过程。 对于正则表达式,...

911

倍福--TwinSAFE功能块的使用

在安全模块的程序设计中,输入变量取反,或者把PLC的变量连接到安全的功能块程序中, 操作流程 1.1. 功能块输出取反 例如修改IN,右击属性,然后可在Single-Channel选项中选择是NO还是NC的输入信号。 1.2. PLC标准变量作为安全程序的输入 1.2.1. 建立两个PLC变量 1.2.2. 安全程序区创建变量 1.2.3. 功能块变量链接 首先,PLC变量不能直接连到Estop功能块的输入变量中,否则会报错,但PLC可以连接到SafeAnd这些功能块,然后再转出来,如下所示

weixin_41883890的博客 5315

vba正则表达式入门

正则表达式很强大且内容比较多。不少初学者学这个表示很困难。故写一篇入门的教程。 1、什么是正则表达式 正则表达式是一个天才创建的用于快速检索匹配字符串,通过简单的表达式匹配文本。 2、正则表达式的组成 正则表达式也是一个字符串,包括元字符、限定符和正常意义的字符。正则表达式强大的地方就在元字符和限定符。 3、限定符 很多人讲这个都是先讲元字符。其实先讲限定符更加容易吸收。限定符是表示前面字符或元字符出现的次数。主要限定符如下: 限定符 含义 * 表示前面字符或...

gerald2008的专栏 2万+

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

正则表达式从入门到精通

正则表达式从入门到入土

cgy091107的博客 2638

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

100个正则表达式的入门实例和40个组合类型正则表达式实例

100个正则表达式的入门实例和40个组合类型正则表达式实例

HRD的博客 5168

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

正则表达式入门及常用的正则表达式

正则表达式(Regular Expression,简称 Regex)是一种强大的文本处理工具,用于匹配、查找和替换字符串中的特定模式。

zrhsmile的博客 1153

正则表达式快速入门

正则表达式(Regular Expression),又称规则表达式,是一种文本模式,通常用来检索、替换和控制文本。学习正则表达式,实际上是在学习一种十分灵活的逻辑思维。

JonSnowNothing的博客 885

正则表达式入门指南

正则表达式30分钟入门教程 http://deerchao.net/tutorials/regex/regex.htm Python正则表达式指南 http://www.cnblogs.com/huxi/archive/2010/07/04/1771073.html

ringliwei 228

shell 之 正则表达式入门

正则表达式入门 ​ 正则表达式使用单个字符串来描述、匹配一系列符合某个语法规则的字符串。在很多文 本编辑器里,正则表达式通常被用来检索、替换那些符合某个模式的文本。在Linux中, grep,sed,awk等命令都支持通过正则表达式进行模式匹配。 1 常规匹配 一串不包含特殊字符的正则表达式匹配它自己,例如: [xiao@hadoop105 ~]$ cat /etc/passwd | grep xiao xiao:x:1001:1001::/home/xiao:/bin/bash 就会匹配所有包含 xia

weixin_49063354的博客 215

正则表达式 入门

别被下面那些复杂的表达式吓倒,只要跟着我一步一步来,你会发现正则表达式其实并没有你想像中的那么困难。当然,如果你看完了这篇教程之后,发现自己明白了很多,却又几乎什么都记不得,那也是很正常的——我认为,没接触过正则表达式的人在看完这篇教程后,能把提到过的语法记住80%以上的可能性为零。这里只是让你明白基本的原理,以后你还需要多练习,多使用,才能熟练掌握正则表达式。 除了作为入门教程之外,本文还试图成为可以在日常工作中使用的正则表达式语法参考手册。就作者本人的经历来说,这个目标还是完成得不错的——你看,我自

方逸涛的专栏 593

正则表达式30分钟入门教程

强烈推荐很好的关于正则表达式使用的教程正则表达式30分钟入门教程版本:v2.3 (2008-4-13) 作者:deerchao 转载请注明来源http://unibetter.com/deerchao/zhengzhe-biaodashi-jiaocheng-se.htm

坚强的理由 531

正则表达式30分钟入门

正则表达式30分钟入门教程

木头 173

[精华] 正则表达式30分钟入门教程

正则表达式30分钟入门 从这里进去,挺好用的,容易看懂,学习记录一下

weixin_40362806的博客 341

python正则表达式简单入门_Python 正则表达式入门(初级篇)

本文主要为没有使用正则表达式经验的新手入门所写。转载请写明出处引子首先说 正则表达式是什么?正则表达式,又称正规表示式、正规表示法、正规表达式、规则表达式、常规表示法(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表达式使用单个字符串来描述、匹配一系列匹配某个句法规则的字符串。在很多文本编辑器里,正则表达式通常被用来检索、替...

weixin_42510888的博客 409
上一篇: 纯函数
下一篇: 前后端完全分离后前端如何启动静态服务保证开发人员的访问?
五月西瓜
博客等级 码龄12年 4粉丝 28原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值