正则表达式
什么是正则表达式?
正则表达式(Regular Expression)是用于描述一组字符串特征的模式,用来匹配特定的字符串。通过特殊字符+普通字符来进行模式描述,从而达到文本匹配目的工具。 正则表达式目前被集成到了各种文本编辑器/文本处理工具当中。
如何定义正则表达式?
① 1)显式定义 所谓显式 :就是一眼就看出是正则表达式的定义,足够明显。显式定义必须是使用new关键字来定义。 语法: var 变量名 =new RegExp(“正则表达模式”); 显式定义的正则表达式必须要使用双引号括起来,要注意字符串的转义。
②隐式指的是没那么明显,大家可能一眼没有看出正则表达式的定义。 语法:var 变量名 =/正则表达式 模式/ 隐式定义的正则表达式开头和结尾都必须是斜杠“/”。记得使用隐式定义的正则表达式是不需要使用双引号括起来的,这一点跟显式定义的正则表达式不一样!
为什么要使用正则表达式?
典型的搜索和替换操作要求您提供与预期的搜索结果匹配的确切文本。虽然这种技术对于对静态文本执行简单搜索和替换任务可能已经足够了,但它缺乏灵活性,若采用这种方法搜索动态文本,即使不是不可能,至少也会变得很困难。
1、测试字符串内的模式。例如,可以测试输入字符串,以查看字符串内是否出现电话号码模式或信用卡号码模式。这称为数据验证。
2、替换文本。可以使用正则表达式来识别文档中的特定文本,完全删除该文本或者用其他文本替换它。
3、基于模式匹配从字符串中提取子字符串。可以查找文档内或输入域内特定的文本。 例如,您可可能需要搜索整个网站,删除过时的材料,以及替换某些 HTML 格式标记。在这种情况下,可以使用正则表达式来确定在每个文件中是否出现该材料或该 HTML 格式标记。此过程将受影响的文件列表缩小到包含需要删除或更改的材料的那些文件。然后可以使用正则表达式来删除过时的材料。最后,可以使用正则表达式来搜索和替换标记。
正则表达式——修饰符(标记)
标记也称为修饰符,正则表达式的标记用于指定额外的匹配策略。
修饰符 |
含义 |
描述 |
i |
ignore - 不区分大小写 |
将匹配设置为不区分大小写,搜索时不区分大小写: A 和 a 没有区别。 |
g |
global - 全局匹配 |
如果不带g,正则过程中字符串从左到右匹配,找到第一个符合条件的即匹配成功,返回 如果带g,则字符串从左到右,找到每个符合条件的都记录下来,知道字符串结尾位置
|
m |
multi line - 多行匹配 |
使边界字符 ^ 和 $ 匹配每一行的开头和结尾,记住是多行,而不是整个字符串的开头和结尾。 |
s |
特殊字符圆点 . 中包含换行符 \n |
默认情况下的圆点 . 是匹配除换行符 \n 之外的任何字符,加上 s 修饰符之后, . 中包含换行符 \n。 |
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
· 实操Deepseek接入个人知识库
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库