JavaScript中的正则表达式(下)

JavaScript中的正则表达式介绍了JavaScript中正则表达式的语法,本文同样是JavaScript权威指南的笔记,介绍JavaScript中正则表达式的一些方法。


    • 用于模式匹配的String方法

      • search()方法

        参数是一个正则表达式,返回第一个与之匹配的字串的起始位置,如果找不到匹配的字串,它将返回-1。比如:‘JavaScript‘.search(/script/i) 返回4。

        同时,search方法不支持全局搜索,因为它会忽略正则表达式中的修饰符g。

      • replace()方法

        执行检索和替换的功能。第一个参数是正则表达式,第二个参数是要进行替换的字符串。

        如果指定了修饰符g,则会替换所有的匹配项,否则只替换第一个。

        另外,上一篇文章中提到,正则表达式使用圆括号进行分组,同时这些括起来的内容从左到右是有索引编号的。如果在替换字符串中出现了$加数字,那么replace()将用与指定的字表达式相匹配的文本来替换这两个字符。比如:

      • var quote = /"([^"]*)"/g;
        ‘abc"xxx"def‘.replace(quote, ‘“$1”‘);//abc“xxx”def
      • 此外,replace第二个参数还可以是函数。例如:
        1. text.replace(/\b\w+\b/g, function(word) {
        2. return word.substring(0,1).toUpperCase + word.substring(1);
        3. })
      • match()方法

        唯一参数就是正则表达式,返回一个由匹配项组成的数组。若设置了g则返回所有匹配项组成的数组。

        另外,如果没有修饰符g,返回的数组中第一项是匹配的字符串,后面的项是正则表达式中圆括号括起来的项。

        比如:

      • var url = /(\w+):\/\/([\w.]+)\/(\S*)/;
        var text = ‘Visit my blog http://www.example.com/~david‘;
        //[‘http://www.example.com/~david‘, ‘http‘, ‘www.example.com‘, ‘~david‘]
      • split()方法

        split的参数也支持正则表达式。

    • RegExp对象
      • RegExp的五个属性

        source:正则表达式的文本
        global:是否有修饰符g
        ignoreCase:是否有修饰符i
        multiline:是否有修饰符multiline
        lastIndex:如果有修饰符g,这个属性存储下一次开始检索的位置。

      • 两个方法

        exec()方法,与match类似,但总是返回一个结果,并返回lastIndex属性的信息。从而可以反复调用exec方法获得所有匹配。

        test()方法,比exec更简单一些,如果包含匹配结果则返回true。

时间: 2024-10-09 17:51:19

JavaScript中的正则表达式(下)的相关文章

JavaScript中的正则表达式(终结篇)

JavaScript中的正则表达式(终结篇) 在之前的几篇文章中,我们了解了正则表达式的基本语法,但那些语法不是针对于某一个特定语言的.这篇博文我们将通过下面几个部分来了解正则表达式在JavaScript中的使用: JavaScript对正则表达式的支持程度 支持正则表达式的RegExp类型 RegExp的实例属性 RegExp的实例方法 RegExp的构造函数属性 简单的应用 第一部分:JavaScript对正则表达式的支持程度 之前我介绍了正则表达式的基本语法,如果大家不是很了解可以先看下面

C++、Java、JavaScript中的正则表达式

编程思想之正则表达式 什么是正则表达式? 正则表达式(Regular Expression)就是用某种模式去匹配一类字符串的公式.如你要在一篇文章中查找第一个字是"罗"最后一个字是"浩"的三个字的姓名,即"罗*浩":那么"罗*浩"就是公式,也称作模式(Pattern),这篇文章就是要匹配的串(或叫文本text).再如,你要检查输入的一个字符串是否是126邮箱的格式,你得制定一个规则去查检,这种规则就是正则表达式. 从入门开始

JavaScript中使用正则表达式

      正则表达式又叫正规表示法,是一种表达文本模式的方法.通常是使用单个字符串来描述,匹配一系列符合某个规则的字符串.正则表达式是对字符串进行操作并且返回结果的一种工作方式,很多程序设计语言都对其进行了设计,而在JavaScript中对正则表达式的实现是基于perl的语法规则进行构建的.记得教我编程的老师说过“道士的驱魔符,医生的处方单,程序员的正则表达式”称为三个行业奇迹,表示非行业内的人很难弄懂到底是什么意思.其实正则表达式还是很容易入门的,但是要精通的话还是需要话一些时间的. 现在有

javaScript中有关正则表达式的用法总结

js中处理正则表达式的类:RegExp 用法: var reg=new RegExp("express"); 或者: var reg=/express/; js中常用的6个方法: test():是否存在 exec():返回查询值 match():得到查询的数组 search():返回搜索的位置 replace():替换 split():分割成数组 这些方法,里面的参数都是正则表达式. js中常用的4大类: 简单类.负向类.组合类.范围类. 简单类:/[123]qqqq/gi:表示开头必

javascript中的正则表达式学习

一.前言 关于正则表达式自身的语法这里不做过多介绍(详情可参见http://www.php100.com/manual/unze.html),这里仅仅解释javascript中和正则表达式相关的几个方法的使用. 二.javascript中的RegExp对象 在javascript中,有两种方法可以构建正则: 正则表达式字面量 RegExp构造器 RegExp对象有以下属性: global:如果标识g,则为true ignoreCase:如果标识i被使用,则为true lastIndex:下一次e

javascript中的正则表达式

javascript中采用RegExp对象表示正则表达式. 而RegExp对象一共有3个方法, 他们分别是: 1.compile 2.exec 3.test 那么这三个方法到底是怎么用的呢? 首先,compile没有什么用,它只能在多次正则匹配的时候提高些许效率,先不去考虑. 下面说说exec,它返回找到的指定的值,这个值在字符串中的位置,以及整个字符串.如果找不到,返回null. 1 var pattern = new RegExp('man', 'g'); 2 var str1 = "i a

(译)JavaScript 中的正则表达式(RegEx)实操——快速掌握正则表达式,伴有随手可练的例子————(翻译未完待续)

(原文:https://blog.bitsrc.io/a-beginners-guide-to-regular-expressions-regex-in-javascript-9c58feb27eb4) 当你第一次看到正则,它们就像随意堆放的字符,看起来毫无意义.不过尽管他们看起来很棘手(因为复杂的语法规则),他们却极其有用. 事实是,正确地理解了正则表达式,能让你成为一个更加高明的程序员.为了完全了解正则表达式的世界,你需要先学习一些基本概念,在此基础上才能有所作为. 废话不多说,让我们开始吧

【Jsp】Jqueryajax技术在Jsp中的应用与javascript中的正则表达式

ajax不是一门新语言,只是一个很平常的即时响应技术,非常简单,一点都不玄虚,就像数据库技术一样能够运用至php,asp.net,asp与jsp等各大网页之中,与网页有着很好的融合性 ajax务必运行在服务器中,因为ajax是一项服务器技术,所以使用ajax在本地的两个未被挂载到服务器上的网页之间,传递数值是不可能的,尽管jquery是本身并不需要挂载到服务器上使用 那么ajax到底是什么呢? 传统的表单的提交有时会带给用户不良的体验, 比如以下的例子: 在jqueryajax.jsp下,有着如

【JavaScript中的正则表达式】

原文地址:http://blog.csdn.net/xh16319/article/details/9987847 1. 正则表达式规则 1.1 普通字符 字母.数字.汉字.下划线.以及后边章节中没有特殊定义的标点符号,都是"普通字符".表达式中的普通字符,在匹配一个字符串的时候,匹配与之相同的一个字符. 举例1:表达式 "c",在匹配字符串 "abcde" 时,匹配结果是:成功:匹配到的内容是:"c":匹配到的位置是:开始于