JavaScript正则表达式(一)—— 开始及资源

本文介绍了正则表达式的基本概念,包括其定义、组成要素及应用场景,并探讨了学习正则表达式的益处。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

开始

正则表达式是神秘而有趣的,一起来看看吧~~

什么是正则表达式?

A regular expression, regex or regexp(sometimes called a rational expression)is, in theoretical computer science and formal language theory, a sequence of characters that define a search pattern. Usually this pattern is then used by string searching algorithms for “find” or “find and replace” operations on strings. ——WIKIPEDIA

一切都是模式!!!

本质上,正则表达式(简称“正则”)是根据特定规则实现的适用的模式,用于匹配指定范围文本

可以看到这里主要包括:规则模式范围文本


规则:也就是正则表达式的语法,包括原义文本字符,修饰符,和元字符。其中修饰符可分为igm三种;元字符又可以分为字符类,范围类,预定义类,量词,分组等等,还有贪婪,非贪婪,正向前瞻,负向前瞻等特殊用法。

模式模式可以理解为是最终用于匹配文本的一组规则集合,也可以说是一种适用的通用规律。必须提及的是,模式是对最终实现目的的一种描述,其定义方式和复杂程度,和目的紧密相关。因此在编写前,需要明确最终的目的,是用于检索?提取数据?还是用于校验?

范围:这里的范围,指的是需要进行处理的文本数据可能包含的场景。因为针对不同数据,不同场景得到的模式不尽相同,可能对于数据集A,正则表达式R可得到正确结果,但是在添加一条新类型数据后,R定义的规则便不适用了。因此在正则表达式的世界中,不存在最好的,只有最适用的,而且每个人对数据和规则的理解也千差万别,所以无需追求适配所有情况的正则,那无异于画蛇添足。

文本:正则表达式的根本就是匹配文本。在此基础上,进行校验,和相关操作,如JavaScript中的String.search()String.replace()函数便是分别实现了检索和替换的操作。


正则适用场景有哪些?

一切与文本有关的操作。

当前主流的编程语言几乎都实现了对正则的支持。但可能由于语言自身的使用范围,导致对正则的实现存在细微的差异,但中心思想和基本语法却是相一致的。

因为正则的出现便是为了在Unix系统下方便操作文本,因此在各系统的终端或命令行中都可以使用,只是需要了解系统对正则的支持方式。

支持正则的IDE中,有助于更快定位文件或代码片。

注意:当前正则语法存在两种版本,POSIX标准语法Perl语法标准。在使用时需要了解当前使用规则的版本。

学习正则能收获什么?

  • 当然,首先就是利用正则处理字符串的技术
  • 个人认为,其内涵的思想和方法也是值得深入体会的
    • 对规则的提炼,从特殊到一般的模式
    • 从局部到整体的分析策略
    • 知己知彼百战不殆
    • 合理分解问题的方法
    • 没有最好的,只有最适合的
    • 逼格不是装出来的,是练出来的

推荐资源

教程

网站

博客

书籍:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值