Powershell--正则表达式--字符--含义

Powershell--正则表达式--字符--含义

2022年7月5日

10:43

某些特定字符在正则表达式有特殊含义,这些特定字符可以允许检测文本变量中的文本模式;

示例:

\w          用于匹配“文本字符”也就是字母、数字、以及下划线,但不包含标点符号和空格。

         例: 正则表达式 \won ,可以匹配“Don”、“Ron”、以及“ton”,

                 这里 \w可以代表任意字母、数字或下划线;

W与\w, 相反(这也是power shell会区分大小写的一个示例),

                    他将会配配空格与标点符号----也就是“非字母”;

\d              用于匹配包括0到9的任意数字;

\D              用于匹配任意非数字;

\s              用于匹配任意空格字符,比如Tab、空格、或者回车符;

\S               用于匹配任意非空格字符;

.(句号)   代表任意单个字符 ;

[abcde]    用于匹配在该集合中的任意字符

                 例:正则表达式 d[aeiou]n,

                 可以匹配“Don”、“Dan”   、“den”、“din”、“don”、“dun”,

                 不会匹配 “doun”、“deen”“daen”“dein”、等等;

[^abcde]     用于匹配不在该集合中的一个或多个字符

                正则表达式               

                例:d[^aeiou]  可以与匹配“dns”匹配,但无法与“don”匹配

[a-z]             用于匹配此范围内的一个或多个字符,可以使用“,”逗号分隔列表指定多个范围

                例:[a-f,m-z]

?            问号, 将“?”置于另一个字符或特殊字符之后,可以匹配在字符的一个实例。

                正则表达式

               例:do?n  可以与“don”匹配,但不会与“doon”匹配;

                                还可以与“dn”匹配,

                    这是由于?还可以代表空实例;

“*”      星号,用于匹配该符号之前任意数量的实例。

              正则表达式

              例:do*n 将会与“doon”、“don”匹配,还可以与“dn”匹配。

                     这是由于“*”可以代表空实例;

            

+         加号,用于匹配该符号之前任意数量的实例。

             常可见到“*”星号和“()括号”一起使用,从而创建了一种子表达式。

             正则表达式

             例:(dn)+o  可以与“dndndndno”匹配。

                     这是由于该正则表达式可以重复匹配子表达式的“dn”;

\             反斜杠,是正则表达式的转义字符。将该字符置于正则表达式中有特殊意义的字符之前,

            从而使该字符变为该字符的字面意思

           正则表达式

            例:\. (反斜杠跟句号) ,仅匹配一个句号,而不是像正常情况那样用于代表任意单个字符。

                  如果希望匹配反斜杠,那么在反斜杠之前再加一个反斜杠:"\\."

{2}         用于匹配该符号之前特定数量的实例。

             正则表达式

             例:\d{1}     用于匹配1个数字

                    {2,}     用于匹配2或多个数字,

                    {1,3}   用于匹配至少1个但不超过3个实例。;

^           用于匹配字符串开始部分。

             正则表达式

             例(对比):  d.n      比如既可以匹配“don”,又可以匹配“pteranodon”,

                              ^d.n     只能匹配“don”,而无法匹配“pteranodon”,

                                          由于"^" 是的匹配只能字符串开始部分匹配

                                          而“^”与"[]" 共同使用时表达取匹配的反义。;

$          美元符, 用于匹配字符串结尾部分。

            正则表达式

            例: .icks 既可以与“hicks”匹配,

                     也可以与“sticks”匹配(本例中该匹配其实匹配的是“ticks”),

                      还能够和“disckson”匹配。

                      但是.icks$  无法与“dichson”匹配,

                       这是因为$表示字符“s”应该是该字符串的最后一个字符。;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Virtual_human0806

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值