吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1017|回复: 14
收起左侧

[学习记录] 正则表达式入门

[复制链接]
川奈. 发表于 2022-8-23 11:48
正则表达式(Regular Expression)是一种文本模式,包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为"元字符")。

正则表达式使用单个字符串来描述、匹配一系列匹配某个句法规则的字符串。

正则表达式是繁琐的,但它是强大的,学会之后的应用会让你除了提高效率外,会给你带来绝对的成就感。只要认真阅读本教程,加上应用的时候进行一定的参考,掌握正则表达式不是问题。

许多程序设计语言都支持利用正则表达式进行字符串操作。

例如,您很可能使用 ? 和 通配符来查找硬盘上的文件。? 通配符匹配文件名中的 0 个或 1 个字符,而 通配符匹配零个或多个字符。像 data(\w)?.dat 这样的模式将查找下列文件:

data.dat
data1.dat
data2.dat
datax.dat
dataN.dat


使用 * 字符代替 ? 字符扩大了找到的文件的数量。data.*\.dat 匹配下列所有文件:

data.dat
data1.dat
data2.dat
data12.dat
datax.dat
dataXYZ.dat
管这种搜索方法很有用,但它还是有限的。通过理解 * 通配符的工作原理,引入了正则表达式所依赖的概念,但正则表达式功能更强大,而且更加灵活。

正则表达式的使用,可以通过简单的办法来实现强大的功能。下面先给出一个简单的示例:

^ 为匹配输入字符串的开始位置。

[0-9]+匹配多个数字, [0-9] 匹配单个数字,+ 匹配一个或者多个。

abc$匹配字母 abc 并以 abc 结尾,$ 为匹配输入字符串的结束位置。

我们在写用户注册表单时,只允许用户名包含字符、数字、下划线和连接字符 -,并设置用户名的长度,我们就可以使用以下正则表达式来设定。



以上的正则表达式可以匹配 runoob、runoob1、run-oob、run_oob, 但不匹配 ru,因为它包含的字母太短了,小于 3 个无法匹配。也不匹配 runoob$, 因为它包含特殊字符。

免费评分

参与人数 2吾爱币 +3 热心值 +2 收起 理由
RobinMaas + 2 + 1 用心讨论,共获提升!
lin_xop + 1 + 1 热心回复!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

syy 发表于 2022-8-23 13:48
正则在python中有re 也有xpath  还有一种是bs4 ,这些大致都是通的  对前端r‘ <h>(.*?)</h>.*? 提取所需要的数据
xiaomm250 发表于 2022-8-23 13:55
没事多在vim中用几下正则,很快你就能记住了!
xiaoran1431 发表于 2022-8-23 14:31
一笑懸命桑 发表于 2022-8-23 14:41
多出点  之前想学 死活看不懂
stitch007 发表于 2022-8-23 14:47
正则这东西 学一次忘一次
塞北的雪 发表于 2022-8-23 14:57
stitch007 发表于 2022-8-23 14:47
正则这东西 学一次忘一次

还好吧,用的多了就记住了。

看着语法挺复杂,其实没啥难度的
wudan6 发表于 2022-8-23 15:25
这个适用于所有语言吗
406094055 发表于 2022-8-23 15:33
xiaoran1431 发表于 2022-8-23 14:31
正则表达式 我永远的痛

+1 正则表达式 我永远的痛
 楼主| 川奈. 发表于 2022-8-23 15:39
stitch007 发表于 2022-8-23 14:47
正则这东西 学一次忘一次

多用,常用就不会忘了
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则 警告:本版块禁止回复与主题无关非技术内容,违者重罚!

快速回复 收藏帖子 返回列表 搜索

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-6-4 08:26

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表