zoukankan      html  css  js  c++  java
  • 原生JavaScript---正则表达式

    JavaScript 中正则的性能比想象中的低很多。能用字符串方法搞定的,尽量别用正则。------玉伯

    抛开性能不谈,一起来看看正则表达式怎么用吧!

    先看看JavaScript正则表达式中一些特殊字符的含义:

    字符 含义
    ^ 匹配以某些字符开头的字符串
    $ 匹配以某些字符结尾的字符串
    ? 匹配出现0次或1次的字符或字符串
    * 匹配出现0次或n次的字符或字符串
    + 匹配出现1次或n次的字符或字符串
    {n} 精确匹配出现n次的字符或字符串
    {n,} 匹配出现>=n次的字符或字符串
    {n,m} 匹配出现 >=n次  and  <=m次 的字符或字符串
    . 匹配除了换行符外的字符
    [...] 匹配括号里的任意字符
    [^...] 匹配除了括号里的字符外的任意字符
     匹配一个单词的边界
    B 匹配一个单词的非边界
    d 匹配数字0-9
    D 匹配任何非数字的字符
    w 匹配 a-z  A-Z  0-9  _ 
    W 匹配 非字母、非数字、非下划线
    匹配换行符
    s 匹配空格符
    S 匹配非空格符
    匹配Tab
    字符 含义
    g 全局匹配
    m 多行匹配
    i 忽略大小写

    1.看是否匹配 test()

    如果匹配返回true  不匹配则返回false

    示例:

    //<![CDATA[
    var str="PrimitiveJavaScript is my JavaScript Special column.";
    var pattern1=/Java/;
    document.write(pattern1.test(str));
    document.write("<br/>");
    var pattern2=/java/;
    document.write(pattern2.test(str));
    //--><!]]>


    结果:


    2.返回匹配的值 exec()

    示例:

    //<![CDATA[
    var str="PrimitiveJavaScript is my JavaScript Special column.";
    var pattern=/JavaScript/;
    document.write(pattern.exec(str));
    //--><!]]>


    结果:

    JavaScript

    3.返回匹配的数组 match()

    示例:

    //<![CDATA[
    var str="PrimitiveJavaScript is my JavaScript Special column.";
    var pattern=/JavaScript/g;  //全局匹配
    var result=str.match(pattern);
    document.write(result[0]);
    document.write("<br/>");
    document.write(result[1]);
    //--><!]]>


    结果:


    掌握这三个方法,再加上字符串的知识,就可以处理各种各样的问题啦。

    还是要多加练习,融会贯通。

    就写到这了。

     

    我的新浪微博:X--zhang

    专栏地址:原生JavaScript

    欢迎吐槽,欢迎拍砖!

    文 / X--zhang

  • 相关阅读:
    Gates entitled as knight
    the next generation Office
    Beautiful songs
    一则比较搞笑的新闻:【人才】微软招募英才 机会不容错过
    About cmt lint tools
    Alpha's blog open !
    抱歉!
    新闻:IBM的新工具CHIPHOPPER! 一套能够极大扩展Linux应用范围的新工具、新资源和新软件
    读书笔记:Thinking in Java (一)
    The best coders are:/什么是最牛的程序员
  • 原文地址:https://www.cnblogs.com/javawebsoa/p/3241146.html
Copyright © 2011-2022 走看看