您的位置:首页 > 文旅 > 旅游 > 互联网 创新创业大赛_跨境电商平台设计_一个完整的产品运营方案_知乎seo排名的搜软件

互联网 创新创业大赛_跨境电商平台设计_一个完整的产品运营方案_知乎seo排名的搜软件

2025/4/25 3:39:13 来源:https://blog.csdn.net/weixin_51899238/article/details/147349230  浏览:    关键词:互联网 创新创业大赛_跨境电商平台设计_一个完整的产品运营方案_知乎seo排名的搜软件
互联网 创新创业大赛_跨境电商平台设计_一个完整的产品运营方案_知乎seo排名的搜软件

重心应该放在通配符的使用上

正则表达式

正则表达式是用于 文本匹配和替换 的强大工具

介绍两个交互式的网站来学习正则表达式
regexlearn 支持中文

regexone
还有一个在线测试的网址
regex101

基本规则

符号作用示例
.匹配任何字符除了换行a.b -> axb/a,b
[abc]匹配字符集里面的任何一个内容b[aei]d -> bad/bed/bid
[^abc]否定字符集,匹配除了字符集之外的字符b[abc]d -> bad b[^abc]d ↛ bad
[a-z]匹配a-z的所有字符也能任意指定区间[a-z] -> x/a/d/r/t
[0-9]同样支持数字匹配[0-9] -> 1/4/7
*匹配前一个字符0次或多次be* -> b/be/beeee
+匹配前一个字符1次或多次be+ -> be/beeee
?匹配前一个字符0次或1次colou?r - > colour/color
{n}表示前一个字符确切的次数be{2}t -> beet
{n,}表示前一个字符至少出现nbe{2,} -> bee/beee/beeeeee
{m,n}表示前一个字符出现的次数在m-n之间be{1,3} -> be/bee/beee
^表示匹配行首-
$匹配行尾-
\w用于匹配字母、数字和下划线-
\W用于匹配字母数字和下划线之外的内容-
\d用于匹配数字相当于[0-9]-
\D用于匹配除了数字以外的内容相当于[^0-9]-
\s匹配空白字符-
\S匹配非空白字符-
.*贪婪匹配尽可能多的匹配-
.*?q懒惰匹配遇到你所给的内容便停止这里是q-
(?=pm)正向先行断言,只匹配后面有 pm 的内容-
(?!pm)负向先行断言,处了后面有pm的内容-
(?<=$)正向后行断言,只匹配以$开头的内容-
(?<!q)负向后行断言,只匹配不以q-

使用()可以完成分组匹配 ()中为想捕获的内容(?:)可以仅分组不捕获

在这里插入图片描述
|可以支持或的逻辑
在这里插入图片描述

这样可以捕捉以.c.txt结尾的文件

建议直接跟着交互式教程玩一遍,然后自己在在线测试网址看结果,无需看我的举例

举例

  • ^匹配行首
    在这里插入图片描述

  • $匹配行尾
    在这里插入图片描述
    \为转义字符否则.的含义为匹配任何一个字符
    在这里插入图片描述

  • \w
    在这里插入图片描述

  • \W
    在这里插入图片描述
    在这里插入图片描述

  • \d
    在这里插入图片描述

  • \D
    在这里插入图片描述

  • \s
    在这里插入图片描述
    -\S
    在这里插入图片描述

  • (?=)
    匹配以.txt结尾的文件名
    在这里插入图片描述

  • (?!)
    匹配除了.txt的文件名
    在这里插入图片描述
    这样其实不能达到效果
    在这里插入图片描述

  • (?<=)
    匹配所有以点开头的单词,但是不包括.
    在这里插入图片描述-(?<!)
    在这里插入图片描述
    \b表示单词的边界

  • .*
    尽可能长的进行匹配
    在这里插入图片描述

  • .*?
    遇到即停止
    在这里插入图片描述

linux通配符

这个部分与正则的语法有一定的差异
也没有那么复杂

符号作用
*匹配任意数量的任意字符
?匹配单个任意字符
[a-z]括号内任意一个字符,这与正则规则相同就不多说了
[^0-9]也支持取反不过使用!也可以

我们使用rm删除命令来举例

删除所有以d开头的目录
在这里插入图片描述

删除所有以数字结尾的目录和文件
注意3是个普通文件他的颜色与目录不同,他也被删除了
在这里插入图片描述

rm -rf * 

删库跑路2333 注意这会删除你当前工作目录的所有内容,而且linux没有类似于回收站的机制基本无法找回,请慎重
在这里插入图片描述
这些基本上够日常使用

不过其实还支持更强大的通配符

更强大的通配符

查看是否开启

shopt extglob

在这里插入图片描述
显示on即正常开启了,如果没有采用下面命令开启

shopt -s extglob

pattern都是通配符

注意如果你的rm后面的删除的文件名没有/那么会针对所有目录和文件操作 如果你不想误操作删除了你的目录的话你就不要加上 -r

  1. ?(pattern)匹配0次或1次
    在这里插入图片描述
    同时删除dir和dirx

  2. *(pattern)匹配0次或多次
    在这里插入图片描述
    删除所有以数字结尾的内容,如果你不采用这个
    在这里插入图片描述
    你就只能删除单个数字结尾的内容

  3. +(pattern)匹配1次或多次
    删除所有以dir开头以数字结尾的目录和文件
    在这里插入图片描述
    注意如果这里是你用*([0-9])你会导致dir23xdirx也被删除,因为*([0-9])可以是0次,随后前面的*可以把最后的x也匹配上
    在这里插入图片描述

  4. !(pattern)不匹配pattern
    删除所有不以数字为结尾的目录
    在这里插入图片描述
    注意这个/非常关键如果你没有/那么你的对象不再只是目录文件也算了
    在这里插入图片描述
    你会删除所有不以数字结尾的文件和目录

  5. @(pat1|pat2)同时匹配pat1pat2的内容
    删除所有纯数字和纯字母的文件和目录
    在这里插入图片描述
    你可以主要到我使用了一些嵌套扩展通配符这也是可以的

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com