Linux教程之正则表达式

文本处理之正则表达式

适用于 ubuntu 20.04
ubuntu 20.04 是 “西柚云” 主要使用的操作系统 西柚云官网

正则表达式是一串用于匹配字符的字符,字符就是我们能够看到的文字符号。正则表达式的的优点是可以使用少量字符匹配大量字符,这里我们将用于匹配其他字符的正则表达式称为模式

正则表达式是一项偏向于实践的知识,通过实践来学习会事半功倍,因此这里推荐大家到相应的正则表达式在线练习平台去学习。(会有视频演示)

我们学习正则表达式,是为了利用它来更方便地处理文本。那么什么是文本呢?文件中的内容属于文本,ls 的输出内容也属于文本,文本就是我们能够看到的文字符号。后文学习的命令(grep,sed,awk)会使用到正则表达式来处理文本内容。

当然,你可能还是对正则表达式的作用不甚清楚,这里我可以给出两条命令来演示一下它的功能。

# 删除 test.txt 中包含数字的行
sed -i '/[0-9]/d' test.txt

# 杀死运行命令中包含有 jupyter 关键字的所有进程
ps -ef | grep jupyter | awk '{if ($0 ~ /grep/) {next}; print($2)}' | xargs kill -9

表格来源:https://regexone.com/

模式匹配文本
abc…Letters
123…Digits
\dAny Digit
\DAny Non-digit character
.Any Character
.Period
[abc]Only a, b, or c
[^abc]Not a, b, nor c
[a-z]Characters a to z
[0-9]Numbers 0 to 9
\wAny Alphanumeric character
\WAny Non-alphanumeric character
{m}m Repetitions
{m,n}m to n Repetitions
*Zero or more repetitions
+One or more repetitions
?Optional character
\sAny Whitespace
\SAny Non-whitespace character
^…$Starts and ends
(…)Capture Group
(a(bc))Capture Sub-group
(.*)Capture all
(abc|def)Matches abc or def

在线正则表达式练习平台:https://regexlearn.com/zh-cn/learn

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值