加入收藏 | 设为首页 | 会员中心 | 我要投稿 安卓应用网 (https://www.0791zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > PHP > 正文

初步学习正则表达式

发布时间:2020-05-25 02:56:15 所属栏目:PHP 来源:互联网
导读:目录 分隔符 字符类和类型 重复 子表达式 子表达式计数 定位到字符串的开始或末尾 分支 匹配特殊字符 特殊字符含义 分隔符 正则表达式必须包含在一对分隔符中。可以选择任何非字母,数字,

<p id="main-toc">目录


<p id="-toc">


<p id="%E5%88%86%E9%9A%94%E7%AC%A6-toc"><a href="#%E5%88%86%E9%9A%94%E7%AC%A6" data-cke-saved-href="#%E5%88%86%E9%9A%94%E7%AC%A6">分隔符


<p id="%E5%AD%97%E7%AC%A6%E7%B1%BB%E5%92%8C%E7%B1%BB%E5%9E%8B-toc"><a href="#%E5%AD%97%E7%AC%A6%E7%B1%BB%E5%92%8C%E7%B1%BB%E5%9E%8B" data-cke-saved-href="#%E5%AD%97%E7%AC%A6%E7%B1%BB%E5%92%8C%E7%B1%BB%E5%9E%8B">字符类和类型


<p id="%E9%87%8D%E5%A4%8D-toc"><a href="#%E9%87%8D%E5%A4%8D" data-cke-saved-href="#%E9%87%8D%E5%A4%8D">重复


<p id="%E5%AD%90%E8%A1%A8%E8%BE%BE%E5%BC%8F-toc"><a href="#%E5%AD%90%E8%A1%A8%E8%BE%BE%E5%BC%8F" data-cke-saved-href="#%E5%AD%90%E8%A1%A8%E8%BE%BE%E5%BC%8F">子表达式


<p id="%E5%AD%90%E8%A1%A8%E8%BE%BE%E5%BC%8F%E8%AE%A1%E6%95%B0-toc"><a href="#%E5%AD%90%E8%A1%A8%E8%BE%BE%E5%BC%8F%E8%AE%A1%E6%95%B0" data-cke-saved-href="#%E5%AD%90%E8%A1%A8%E8%BE%BE%E5%BC%8F%E8%AE%A1%E6%95%B0">子表达式计数


<p id="%E5%AE%9A%E4%BD%8D%E5%88%B0%E5%AD%97%E7%AC%A6%E4%B8%B2%E7%9A%84%E5%BC%80%E5%A7%8B%E6%88%96%E6%9C%AB%E5%B0%BE-toc"><a href="#%E5%AE%9A%E4%BD%8D%E5%88%B0%E5%AD%97%E7%AC%A6%E4%B8%B2%E7%9A%84%E5%BC%80%E5%A7%8B%E6%88%96%E6%9C%AB%E5%B0%BE" data-cke-saved-href="#%E5%AE%9A%E4%BD%8D%E5%88%B0%E5%AD%97%E7%AC%A6%E4%B8%B2%E7%9A%84%E5%BC%80%E5%A7%8B%E6%88%96%E6%9C%AB%E5%B0%BE">定位到字符串的开始或末尾


<p id="%E5%88%86%E6%94%AF-toc"><a href="#%E5%88%86%E6%94%AF" data-cke-saved-href="#%E5%88%86%E6%94%AF">分支


<p id="%E5%8C%B9%E9%85%8D%E7%89%B9%E6%AE%8A%E5%AD%97%E7%AC%A6-toc"><a href="#%E5%8C%B9%E9%85%8D%E7%89%B9%E6%AE%8A%E5%AD%97%E7%AC%A6" data-cke-saved-href="#%E5%8C%B9%E9%85%8D%E7%89%B9%E6%AE%8A%E5%AD%97%E7%AC%A6">匹配特殊字符


<p id="%E7%89%B9%E6%AE%8A%E5%AD%97%E7%AC%A6%E5%90%AB%E4%B9%89-toc"><a href="#%E7%89%B9%E6%AE%8A%E5%AD%97%E7%AC%A6%E5%90%AB%E4%B9%89" data-cke-saved-href="#%E7%89%B9%E6%AE%8A%E5%AD%97%E7%AC%A6%E5%90%AB%E4%B9%89">特殊字符含义


<hr id="hr-toc">
<h3 id="%E5%88%86%E9%9A%94%E7%AC%A6">分隔符

  • 正则表达式必须包含在一对分隔符中。可以选择任何非字母,数字,"" 或空格的字符作为分隔符。字符串的开始和结束必须有匹配的分隔符。
  • 最常用的分隔符是"/"。 如匹配"shop": /shop/
  • 如果要在正则表达式中匹配字符"/",需要使用""来转义"/"。如匹配"http://": /http:///

  • 可以用字符"."作为匹配除换行符(n)之外任何字符的通配符。如:/.at/ 可以匹配“cat”,“sat”,“mat”等,通常这种通配符的匹配适用于操作系统的文件名匹配。
  • /[a-z]at/ 表示第一个字符是a到z之间的字符,后面匹配at;任何[ ]中的内容都是一个字符类,也就是说方括号内的表达式只匹配一个字符。
  • /[a-zA-Z]/ 表示匹配大小写的任何字符。
  • /[^a-z]/ 用来匹配任何不在a和z之间的字符。当 ^ 符号在 [ ] 中时,表示否的意思。

  • "*"表示这个模式可以重复出现0次或多次。
  • "+"表示这个模式可以重复出现1次或多次。
  • "?" 表示这个模式可以重复出现1次或0次。
  • /[[:alnum:]]+/ 表示至少有一个字母字符。

  • 通常,可以将一个表达式分隔为几个子表达式,如:/(very)*large/ 表示very可以重复出现0次或多次,可以匹配“large”,“very large”,“very very large”等。

  • { } 中使用数字表达式来指定内容允许重复的次数。
  • /(very){3}/ 表示very重复3次
  • /(very){1,3}/ 表示very重复1~3次
  • /(very){2,}/ 表示最少要重复2次

  • ^ 用于正则表达式的开始,表示子字符串必须出现在被搜索字符串的开始处。
  • $ 用于正则表达式的末尾,表示子字符串必须出现在被搜索字符串的末尾。
  • /^bob/ 表示要在开始处匹配 bob - /com$/ 表示要以com结束

  • | 在正则表达式中表示模式选择。
  • /com|edu|net/ 表示匹配com 或edu 或net

  • 如果要匹配一个特殊字符,如“.”,“{”,“$”,就必须在它们前面加一个反斜杠“”。
  • 如果要匹配一个反斜杠“”,则必须用两个反斜杠“”来表示。
  • 在php中,必须使用单引号来引用正则表达式模式。使用双引号引用的正则表达式将带来一些不必要的复杂性。

在PCRE正则表达式中,用于方括号外面的特殊字符 在PCRE正则表达式中,用于方括号里面的特殊字符

(编辑:安卓应用网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!