• Javascript 正则匹配


     一、验证网站

    1.https://regexper.com/

    2.http://www.regexr.com/

    Character classes
    . any character except newline
    w d s word, digit, whitespace
    W D S not word, digit, whitespace
    [abc] any of a, b, or c
    [^abc] not a, b, or c
    [a-g] character between a & g
    Anchors
    ^abc$ start / end of the string
     B word, not-word boundary
    Escaped characters
    . * \ escaped special characters
    tab, linefeed, carriage return
    u00A9 unicode escaped ©
    Groups & Lookaround
    (abc) capture group
    1 backreference to group #1
    (?:abc) non-capturing group
    (?=abc) positive lookahead
    (?!abc) negative lookahead
    Quantifiers & Alternation
    a* a+ a? 0 or more, 1 or more, 0 or 1
    a{5} a{2,} exactly five, two or more
    a{1,3} between one & three
    a+? a{2,}? match as few as possible
    ab|cd match ab or cd

     二、常用正则

    1.去掉字符串中的html标签

    var str = "<span style='display:none;'>This is test</span><img src=''>ss</img><strong></strong><br/>";
    str.replace(/<[^>]+>/g,"");//去掉所有的html标记 

       去掉网页中的所有的html标签

    string temp = Regex.Replace(html, "<[^>]*>", ""); //html是一个要去除html标记的文档

    2.得到网页上的链接地址

    string matchString = @"<a[^>]+href=s*(?:'(?<href>^']+)'|""(?<href>[^""]+)""|(?<href>[^>s]+))s*[^>]*>";

    3.去掉CSS样式

    $content = str.replace(/<!--[^>]*-->/i, "");//注释内容  
    $content = str.replace(/style=.+?['|"]/i,'');//去除样式
    $content = str.replace(/class=.+?['|"]/i,'');//去除样式
    $content = str.replace(/id=.+?['|"]/i,'');//去除样式
    $content = str.replace(/lang=.+?['|"]/i,'');//去除样式
    $content = str.replace(/width=.+?['|"]/i,'');//去除样式
    $content = str.replace(/height=.+?['|"]/i,'');//去除样式
    $content = str.replace(/border=.+?['|"]/i,'');//去除样式
    $content = str.replace(/face=.+?['|"]/i,'');//去除样式
    $content = str.replace(/face=.+?['|"]/,'');//去除样式 只允许小写 正则匹配没有带 i 参数

     

    4.email正则表达式

        zhangshan@163.com,abc@sina.com.cn , zhangshna.Mr@163.com , abc_Wang.dd@sian.com , abc_Wang.dd.cc@sian.com 这种类似的形式,在@符号之前还有点.

        /^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(.[a-zA-Z0-9_-]+)+$/; //原来的正则表达式

        /^(w)+(.w+)*@(w)+((.w{2,3}){1,3})$/; //修改后的正则表达式

        /^(w)+(.w+)*@(w)+((.w+)+)$/; //修改后的正则表达式

     

        字符描述:

      • ^ :匹配输入的开始位置。
      • :将下一个字符标记为特殊字符或字面值。
      • * :匹配前一个字符零次或几次。
      • + :匹配前一个字符一次或多次。
      • (pattern) 与模式匹配并记住匹配。
      • x|y:匹配 x 或 y。
      • [a-z] :表示某个范围内的字符。与指定区间内的任何字符匹配。
      • w :与任何单词字符匹配,包括下划线。
      • {n,m} 最少匹配 n 次且最多匹配 m 次
      • $ :匹配输入的结尾。

    参考: php 去除html标签和CSS等 https://gist.github.com/wdd2007/3713543

           email正则表达式  http://www.cnblogs.com/vs-bug/archive/2010/03/26/1696752.html

     

  • 相关阅读:
    第一期站立会议7(11.21 个人)
    第一期站立会议6(11.20 个人)
    第一期站立会议5(11.19个人)
    第一期站立会议4(11.18个人)
    第一期站立会议3(11.17个人)
    第一期站立会议2(11.16个人)
    第一期站立会议1(11.15 个人)
    第二阶段第三次站立会议
    对第一阶段提出意见的总结及改进方案
    第二阶段第二次站立会议
  • 原文地址:https://www.cnblogs.com/dxchen/p/6029824.html
Copyright © 2020-2023  润新知