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

时间:2022-08-12 09:30:59

(原文:https://blog.bitsrc.io/a-beginners-guide-to-regular-expressions-regex-in-javascript-9c58feb27eb4)

当你第一次看到正则,它们就像随意堆放的字符,看起来毫无意义。不过尽管他们看起来很棘手(因为复杂的语法规则),他们却极其有用。

事实是,正确地理解了正则表达式,能让你成为一个更加高明的程序员。为了完全了解正则表达式的世界,你需要先学习一些基本概念,在此基础上才能有所作为。

废话不多说,让我们开始吧。

什么是正则表达式(Regular Expression)

RegEx是一种描述字符串模式的方法。描述或匹配所用的表达式形成了自己独特的一种小小的编程语言,跻身于众语言之列——诸如Javascript, Perl, Python, Php, 和 Java。

RegEx能让你检查一些Email地址或密码等字符串,并寻找其中与之前制定的特征模式相匹配的元素,将这些有效元素提取出来并进行后续加工。

创造一个正则表达式

在Javascript中,有两种方式创建RegEx。它既可以通过'RegExp'构造器,也可以用正斜杠( / )封装匹配模型。

正则表达式构造器:

语法:

new RegExp(pattern[, flags]);

示例:

var regexConst = new RegExp('abc');

原生态正则表达式:

语法:

/pattern/flags;

示例:

var regexLiteral = /abc/;

 这里的flags是可选的,我会在本篇后续进行说明。

有些情况我们需要创建动态的正则表达式,这时候原生态的就不管用了,必须用构造器了。

不管用哪种方式,都是创建了一个模式对象,两种方式的模式对象都有同样的功能和特征。

因为是要用到正斜杠( / )来创建匹配模式,所以应该避免误用反斜杠(  \  )。

正则表达式测试

简单匹配模式

一些特殊字符

实战练习

总结

---恢复内容结束---

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

  1. javascript有用小功能总结(未完待续)

    1)javascript让页面标题滚动效果 代码如下: <title>您好,欢迎访问我的博客</title> <script type="text/javasc ...

  2. Java开发中的23&plus;2种设计模式学习个人笔记(未完待续)

    注:个人笔记 一.设计模式分三大类: 创建型模式,共五种:工厂方法模式.抽象工厂模式.单例模式.建造者模式.原型模式. 结构型模式,共七种:适配器模式.装饰器模式.代理模式.外观模式.桥接模式.组合模 ...

  3. JavaScript中String对象的match&lpar;&rpar;、replace&lpar;&rpar; 配合正则表达式使用

    正则表达式由来已久,查找替换功能非常强大,但模板难记复杂. JavaScript中String对象的match().replace()这2个方法都要使用正则表达式的模板.当模板内容与字符串不相匹配时, ...

  4. &lbrack;译&rsqb;JavaScript中&comma;&lbrace;&rcub;&plus;&lbrace;&rcub;等于多少&quest;

    最近,Gary Bernhardt在一个简短的演讲视频“Wat”中指出了一个有趣的JavaScript怪癖:在把对象和数组混合相加时,会得到一些你意想不到的结果.本篇文章会依次讲解这些计算结果是如何得 ...

  5. &lbrack;译&rsqb;Javascript中的错误信息处理&lpar;Error handling&rpar;

    本文翻译youtube上的up主kudvenkat的javascript tutorial播放单 源地址在此: https://www.youtube.com/watch?v=PMsVM7rjupU& ...

  6. &lbrack;译&rsqb;Javascript中的闭包&lpar;closures&rpar;

    本文翻译youtube上的up主kudvenkat的javascript tutorial播放单 源地址在此: https://www.youtube.com/watch?v=PMsVM7rjupU& ...

  7. &lbrack;译&rsqb;Javascript中的本地以及全局变量

    本文翻译youtube上的up主kudvenkat的javascript tutorial播放单 源地址在此: https://www.youtube.com/watch?v=PMsVM7rjupU& ...

  8. &lbrack;译&rsqb;Javascript中的数列

    本文翻译youtube上的up主kudvenkat的javascript tutorial播放单 源地址在此: https://www.youtube.com/watch?v=PMsVM7rjupU& ...

  9. &lbrack;译&rsqb;Javascript中的for循环

    本文翻译youtube上的up主kudvenkat的javascript tutorial播放单 源地址在此: https://www.youtube.com/watch?v=PMsVM7rjupU& ...

随机推荐

  1. 5&period;0 JS中引用类型介绍

    其实,在前面的"js的六大数据类型"文章中稍微说了一下引用类型.前面我们说到js中有六大数据类型(五种基本数据类型 + 一种引用类型).下面的章节中,我们将详细讲解引用类型. 1. ...

  2. Java 使用Redis缓存工具的图文详细方法

    开始在 Java 中使用 Redis 前, 我们需要确保已经安装了 redis 服务及 Java redis 驱动,且你的机器上能正常使用 Java. (1)Java的安装配置可以参考我们的 Java ...

  3. Oracle 日常应用和操作笔记

    简单整理oracle日常应用笔记. 1.采用excel表格中的数据直接粘贴数据库记录中,默认会在后面加一个空格“”,操作完成后一定要记得对空格匹配然后修改一下. 2.查询数据库里的所有表结构, 采用s ...

  4. table表格

    表格是一种组织整理的数据的手段,在div布局还未流行是,也用来布局,一个表格包含了表格整体.表格头部.每个表格均有若干行,每行被分为若干单元格. 在HTML中表格使用table标签来定义,行由< ...

  5. 学习smali

    添加控件id 在R$id.smali文件下添加: .field public static final adposition:I = 0x7f05003d 添加类中常量 MainActivity.sm ...

  6. Reveal 破解

    永久试用Reveal,只需要打开 ~/Library/Preferences/com.ittybittyapps.Reveal.plist 把IBAApplicationPersistenceData ...

  7. Linux学习之服务器端口查看的方法

    1.用netstat查看: [grid@rac121 admin]$ netstat -anp | grep oracle (Not all processes could be identified ...

  8. POJ 2828 Buy Tickets(排队问题,线段树应用)

    POJ 2828 Buy Tickets(排队问题,线段树应用) ACM 题目地址:POJ 2828 Buy Tickets 题意:  排队买票时候插队.  给出一些数对,分别代表某个人的想要插入的位 ...

  9. Java WebService学习资料

    最近用到了WebService,以前没用过,想要好好学习一下.感觉网上资料比较少,而且很杂,找了很久,觉得下面的两个文章解释的比较清楚,分享一下: WebService概念.原理:http://mp. ...

  10. Docker网络——单host网络

    前言 前面总结了Docker基础以及Docker存储相关知识,今天来总结一下Docker单主机网络的相关知识.毋庸置疑,网络绝对是任何系统的核心,他在Docker中也占有重要的作用.同样本文基于Clo ...