色吊丝最新资源-第一福利在线视频-欧美久久久-欧产日产国产精品v原神 |www.phbaer.net

來古計算機 > 軟件編程 > 正文

正則表達式速記技巧

正則表達式是一種特殊的字符串模式,用于匹配一組字符串,就好比用模具做產品,而正則就是這個模具,定義一種規則去匹配符合規則的字符。


微信圖片_20190103121417.png


四個字符是所有語言都支持的正則表達式,所以這個四個是基礎的正則表達式。正則難理解因為里面有一個等價的概念,這個概念大大增加了理解難度,讓很多初學者看起來會蒙,如果把等價都恢復成原始寫法,自己書寫正則就超級簡單了,就像說話一樣去寫你的正則了:

  等價:

  ?,*,+,\d,\w 都是等價字符

  ?等價于匹配長度{0,1}

  *等價于匹配長度{0,} 

  +等價于匹配長度{1,}

  \d等價于[0-9]

  \w等價于[A-Za-z0-9]。

常用運算符與表達式:

  ^ 開始

  () 域段

  [] 包含,默認是一個字符長度

  [^] 不包含,默認是一個字符長度

  {n,n} 匹配長度 

  . 任何單個字符(\. 字符點)

  | 或

  \ 轉義

  $ 結尾

  [A-Z] 26個大寫字母

  [a-z] 26個小寫字母

  [0-9] 0至9數字

[A-Za-z0-9] 26個大寫字母、26個小寫字母和0至9數字

  , 分割

  .

  

  分割語法:

  [A,H,T,W] 包含A或H或T或W字母

  [a,h,t,w] 包含a或h或t或w字母

  [0,3,6,8] 包含0或3或6或8數字


  語法與釋義:

  基礎語法 "^([]{})([]{})([]{})$"

  正則字符串 = "開始([包含內容]{長度})([包含內容]{長度})([包含內容]{長度})結束" 

  

  ?,*,+,\d,\w 這些都是簡寫的,完全可以用[]和{}代替,在(?:)(?=)(?!)(?<=)(?<!)(?i)(*?)(+?)這種特殊組合情況下除外。

  初學者可以忽略?,*,+,\d,\w一些簡寫標示符,學會了基礎使用再按表自己去等價替換


  

  實例:

  字符串;tel:086-0666-88810009999

  原始正則:"^tel:[0-9]{1,3}-[0][0-9]{2,3}-[0-9]{8,11}$" 

  速記理解:開始 "tel:普通文本"[0-9數字]{1至3位}"-普通文本"[0數字][0-9數字]{2至3位}"-普通文本"[0-9數字]{8至11位} 結束"

  等價簡寫后正則寫法:"^tel:\d{1,3}-[0]\d{2,3}-\d{8,11}$" ,簡寫語法不是所有語言都支持。


推薦文章

發表評論:

◎歡迎參與討論,請在這里發表您的看法、交流您的觀點。

標簽列表
網站分類
最新留言

Powered By Z-BlogPHP and Terry

Copyright @ laigucomputer.com 來古計算機 工信部備案號:粵ICP備18009132號