zoukankan      html  css  js  c++  java
  • 正则匹配 特殊的 符号

    
      
      
    :换行/回车符

    :制表符

    d:数字(与[0-9]匹配相同)
    D:非数字(与[^0-9]匹配相同)

    w:单词字符(与[0-9a-zA-Z]匹配相同)
    W:非单词字符

    s:空格字符(与[ f]相同)
    S:非空格字符
    [sS]
    + [sS]* :匹配任意字符,包括换行符

    元字符:

    [] 包围一个字符类,字符类包括:[0-9] [a-z] [a-zA-Z] 等类似。 
    () 包围一个字符分组或定义一个反引用
    $ 匹配行尾
    ^ 匹配行首
    * 匹配前面的子表达式零次或多次。要匹配 * 字符,请使用 *
    + 匹配前面的子表达式一次或多次。要匹配 + 字符,请使用 +
    ? 匹配前面的子表达式零次或一次,或指明一个非贪婪限定符 ?
    . 匹配除换行之外的任何字符
    |管道符。例如:dog|cat:表示或者匹配dog或者匹配cat

    老是忘记:

    正则默认是贪婪匹配:.*

    如果想要飞贪婪匹配:.*?

     

    php UTF-8下测试----
    
    匹配字符串中是否包含中文: preg_match('/[x80-xff]/', $str);
    
    1. GBK (GB2312/GB18030)
    x00-xff GBK双字节编码范围
    x20-x7f ASCII
    xa1-xff 中文 gb2312
    x80-xff 中文 gbk
    
    2. UTF-8 (Unicode)
    u4e00-u9fa5 (中文)
    x3130-x318F (韩文
    xAC00-xD7A3 (韩文)
    u0800-u4e00 (日文)*/




    常用元字符
    代码说明
    . 匹配除换行符以外的任意字符
    w 匹配字母或数字或下划线或汉字
    s 匹配任意的空白符
    d 匹配数字
     匹配单词的开始或结束
    ^ 匹配字符串的开始
    $ 匹配字符串的结束

    常用限定符
    代码/语法说明
    * 重复零次或更多次
    + 重复一次或更多次
    ? 重复零次或一次
    {n} 重复n次
    {n,} 重复n次或更多次
    {n,m} 重复n到m次

    常用反义词
    代码/语法说明
    W 匹配任意不是字母,数字,下划线,汉字的字符
    S 匹配任意不是空白符的字符
    D 匹配任意非数字的字符
    B 匹配不是单词开头或结束的位置
    [^x] 匹配除了x以外的任意字符
    [^aeiou] 匹配除了aeiou这几个字母以外的任意字符

  • 相关阅读:
    体验js之美第八课-面向对象创建和继承终结篇
    从零到一:用Phaser.js写意地开发小游戏(Chapter 3
    HTML5 进阶系列:拖放 API 实现拖放排序
    五款轻量型bug管理工具横向测评
    用原生js写一个"多动症"的简历
    HTML5中新增Javascript特性
    Angular2入门系列(五)———— 路由参数设置
    移动端真机调试实战经验
    Java经典习题44
    Java经典习题43
  • 原文地址:https://www.cnblogs.com/qunshu/p/3207391.html
Copyright © 2011-2022 走看看