正則表達式基礎整理

  經常使用的正則表達式其實很簡單,並且應用範圍很廣,這裏作最經常使用的正則表達式的語法整理。
  特殊符號使用類:
  ^  $(開頭和結尾)  完成的檢測一個字符串是否符合要求,通常用來校驗輸入字符串的正確性
  cba(abc|bca)[abc] 通常用來匹配對應的字符串()表示整個字符串[]表示匹配到裏面的某個 會增長一個|是選擇符號
  * +  ? 分別表示不限次數 一次以上,0次或者1次式子
  {n,m} 限定個數
  另外倆個常見的特殊匹配\s(匹配空白字符).(匹配除換行符外的任何字符)正則表達式

貪婪匹配與貪婪匹配
  <a>   </a>
  匹配的時候<a*?> 這樣就會盡量的減小匹配到的字符串數組


  大部分的正則表達式,上述幾個已經夠用。
   1.匹配常見的手機號碼(常見是指13 15 17 18開頭的手機號)(這是很是常見的一個匹配,輸入手機號碼的時候須要進行匹配)
   ^1[3578]\d{9}$
   ^表示以1開始
   [3578]表示裏面隨便讀取一個
   \d匹配任意一個數字字符等價於[0-9]
   $匹配的結尾 配上了這個字符,就是對給出的字符串進行嚴格檢測,
   PS:當沒有開始符和結束符的時候,會獲得多個匹配結果,若是是用preg_match_all()函數進行匹配,會把多個結果存到一個數組裏面。因此正則表達式的倆個用途顯現出來了:一個是對給出的字符串進行檢測其是否是符合要求(preg_match($pattern,$subject)),另外一個做用是讀取給定的文本,把裏面對應的東西搜索出來(preg_match_all($pattern,$subject,$arr))
   2.檢測一個郵箱(常見類型的郵箱)  
    [\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+
  \w  匹配包括下劃線的任何單詞字符。等價於'[A-Za-z0-9_]'
[\w-]+表示最前面最少出現一次或者屢次\w-裏面包含的字符
()匹配某個類型,裏面做爲一個總體進行匹配
*  表示前面的匹配式子匹配0次或者屢次(這個符號很容易和+搞混淆,它是能夠匹配0次的)
\. 匹配的是小數點  特殊字符匹配的時候都須要轉義符
(\.[\w-]+)* 匹配前面的小數點和字符串
[\w-]+(\.[\w-]+)+ 這段和前面差很少,最少匹配到一個.的字符串
 應用場景:用戶註冊的時候判斷其是否是合法的郵箱,採集使用,採集用戶的郵箱,進行對應的儲存

函數

相關文章
相關標籤/搜索