zoukankan      html  css  js  c++  java
  • JS String与正则表达式

      

      ES标准规定了内置对象,浏览器厂商实现了这些对象以及API,11个:

    Number  String  Boolean  Array  RegExp  Date  Math  Error  Function

    Object  Global全局对象(在浏览器中被替换为window,在正规的解析JS引擎中为Global)

      今天就将写String字符串对象和RegExp正则表达式对象。

      String对象

      用于处理已有的字符块。主要用于计算字符串的长度,为字符串添加样式,寻找关键词。

      创建String对象的语法:

        new String( );

        String( );

      参数s是要存储在String对象中或转换成原始字符串的值。即String(元素),元素可以是数字、数

    组等等,String对象可以将其转化为字符串属性。

      String为多个字符组成的只读字符数组。数组可以随意修改原数组,但字符串只读字符数组,一旦

    创建内容不可改变。两者都能用下标(length属性、for循环遍历、slice选区)访问每个元素、字符。

    要不会改变原字符串的方法都可以运用于字符串。

      String对象的length属性声明了该字符串的字符数。str.length,与数组的区别为,数组的length是声

    明数组的内元素的个数。

      字符串常用API:

      1、大小写的转换/英文:   需要一个返回值

      str.toUpperCase(  )大写   

      str.toLowerCase(  )小写

      2、获取指定位置的字符:   str[ i ]

      var char = str.charAt( i );

      3、获取指定字符unicode码:

      var unicode = str[ i ]charCodeAt(  );

      省略 i 则默认值0。

      将unicode码转换为文字:

      var char = String.fromCharCode(unicode);

      

      4、往数组中添加元素:

      str.push(  );  从尾部添加

      str.unshift(  );  从头部添加

      5、把一个字符串分割成字符串数组:

      var arr = str.split(分隔符);

      分隔符给空字符串,则将字符串中每个字符都分解成数组中的一个元素。

      正则表达式  RegExp对象

      正则表达式是对字符串执行模式匹配的强大工具。

      封装一条正则表达式,提供了使用正则表达式进行查找和验证的API。

      正则就是制定规则,s是空格,即空字符,w 一位字母数,d 一位数字, . 任意字符。

    一位大写字母:[ A-Z ],小写[ a-z ],大小写:[ A-Za-z ],一位汉字:[ u4e00 - u9fa5]。

      量词:专门规定一个位字符集出现次数的规则,量词需放在字符的后面。

      1、有明确数量边界:

        字符集{min,max}规定字符集最少出现min次,最多max次。

        字符集{min,}规定最少min次,多之不限。

        字符集{n}规定只能n次。

      2、没有明确数量边界:字符集?(可有可无,最多一次) | 字符集 * (可有可无,最多无限)

    | 字符集 + (至少一次,最多无限)。

      语法:用变量来创建正则:

      var reg = / 正则 / g ;

      动态创建正则:

      var reg = new RegExp( / 正则 / , "gi" );

      正则还可以用数组来表示:数组 . join( "|" );

       

    查询关键词  可用循环来寻找字符串中多个关键词的位置

      1、查找一个固定的关键词出现的位置:

      var i = str.indexOF("关键词");

      2、专门找最后一个关键词的位置:

      var i = str.lastIndexOf("关键词");

      即从后向前搜索关键词。

      3、var arr = str.match( / 正则 / ig);

      .match查找关键词,返回关键词组成的数组,没有找到返回null。

      默认只找到第一个,找到所有必须加上g。

      4、找到所有关键词内容,又找到每个关键词的位置!

      语法:var arr = reg.exec( 要查找的完整字符串,或者 / 正则 / )

      返回值:本次查找找到的一个关键词及位置。

        arr[ 0 ] : 关键词的内容  如果正则中有分组,arr[ n ] : 自动保存在第n个分组匹配的子内容。

        arr[ 'index' ] : 当前关键词位置。

        ( arr = reg.exec(str) )! = null 则停止循环查找。

      5、检查字符串是否完全满足正则表达式的要求!

      只要是验证,reg中必须前加^后加串,要求从头到尾,都必须匹配。

        var bool = reg . test( 待检测字符串 ) ;

       

     
  • 相关阅读:
    Styling a Flex Button control using embedded fonts(转载)
    ArcSDE Administration Command Reference (来自ARCGIS官方)
    FlexPaper_1.2.1.swc——Flex在线显示PDF文档(使用FlexPaper)感悟
    SDE数据的备份与恢复(转载)
    C#中将dll汇入exe,并加壳(转载)
    WEB页面导出为EXCEL/WORD文档的方法 (转载)
    Property Manager Updated 1.0.0.4 小工具介绍(转载)
    Openbravo 3.0安装过程简述
    Installing "uuidossp" library in Postgres 9.1
    BindingSource的事件触发顺序
  • 原文地址:https://www.cnblogs.com/yeming980912/p/10908111.html
Copyright © 2011-2022 走看看