シェルプログラミングの基本的な教育のための正規表現

I.概要

  • 通常、文字列が特定の形式を満たしているかどうかを確認するために判断文で使用されます
  • 通常の表現は、通常の文字とメタ文字で構成され
    ます。①通常の文字には、大文字と小文字、数字、句読点などの記号が含まれます。②メタ文字と
    、通常の表現で特別な意味を持つ特殊な文字を指し、それらを指定するために使用できます。ターゲットオブジェクトの先頭文字(つまり、メタ文字の前の文字)の出現パターン

2、通常の表現

2.1基本的な正規表現

基本的な正規表現でサポートされるツール:grep、egrep、sed、awk

基础正则表达式常见元字符:
\ :转义字符,用于取消特殊符号的含义,例:\!、\n、\$等

^ :匹配字符串开始的位置,例:^a、^the、^#、^[a-z]
 
$ :匹配字符串结束的位置,例:word$、^$匹配空行

. :匹配除\n之外的任意的一个字符,例:go.d、g..d

* :匹配前面子表达式0次或者多次,例:goo*d、go.*d

[list] :匹配list列表中的一个字符,例:go[ola]d,[abc]、[a-z]、[a-z0-9]、[0-9]匹配任意一位数字

[^list] :匹配任意非list列表中的一个字符,例:[^0-9]、[^A-Z0-9]、[^a-z]匹配任意一位非小写字母

\{n\} :匹配前面的子表达式n次,例:go\{2\}d、'[0-9]\{2\}'匹配两位数字

\{n,\} :匹配前面的子表达式不少于n次,例:go\{2,\}d、'[0-9]\{2,\}'匹配两位及两位以上数字

\{n,m\} :匹配前面的子表达式n到m次,例:go\{2,3\}d、'[0-9]\{2,3\}'匹配两位到三位数字

注:egrep、awk使用{n}、{n,}、{n,m}匹配时“{}”前不用加“\”

2.2拡張された正規表現

サポートされているツール:egrep、awk

扩展正则表达式元字符:
+ :匹配前面子表达式1次以上,例:go+d,将匹配至少一个o,如god、good、goood等

? :匹配前面子表达式0次或者1次,例:go?d,将匹配gd或god

() :将括号中的字符串作为一个整体,例1:g(oo)+d,将匹配oo整体1次以上,如good、gooood等

| :以或的方式匹配字条串,例:g(oo|la)d,将匹配good或者glad

三、規則表現の応用

  • 131で始まる携帯電話番号を設定します(他の8桁は数字です)
    ここに写真の説明を挿入


ここに写真の説明を挿入
ここに写真の説明を挿入
ここに写真の説明を挿入

おすすめ

転載: blog.csdn.net/weixin_51613313/article/details/112175720