0

0

js中的正则表达式大全

php中世界最好的语言

php中世界最好的语言

发布时间:2018-03-07 17:11:27

|

2232人浏览过

|

来源于php中文网

原创

这次给大家带来js中的正则表达式大全,在js中使用正则表达式的注意事项有哪些,下面就是实战案例,一起来看一下。

1、什么是正则?

正则也叫做规则,让计算机能够读懂人类的规则(正则都是操作字符串的)

2、什么是正则表达式?

正则表达式是由一个字符序列形成的搜索模式。

当你在文本中搜索数据时,你可以用搜索模式来描述你要查询的内容。

正则表达式可以是一个简单的字符,或一个更复杂的模式。

正则表达式可用于所有文本搜索和文本替换的操作。

3、正则的写法

var  re = /a/;      正则的简写,其中a是字符串。如果写作 var re  = /'a'/;此种写法是错误的

var  re = new  RegExp('a');  正则表达式的全写(除了必须要用全写的形式一般建议用简写)注意:当正则需要传参的时候一定要用全称的写法

正则中的常用转义字符

\ s : 空  格    \ S : 非空格    

\ d : 数  字    \ D :  非数字    

\w : 字  符    \ W :  非字符    

//在正则中,数字,字母,下划线统统都是字符

.  :  代表任意字符    \ .  :  代表真正的点    

\ b :独立部分    \ B : 非独立的部分    

正则表达式中的量词

{4,7} :最少出现4次,最多出现7次    {4,} :最少出现4次    

{4} :正好出现4次    + :至少出现1次,是{1,}的简写    

? :0次或1次{0,1}    * :至少出现0次{0,}    

^   :放正则的最开始位置,就代表起始的位置    $ : 放正则的最后位置,就代表结束的意思    

正则中的默认是区分大小写的,如果想要不区分大小写,在正则的最后加标识 i  var re = /B/i;

正则默认:正则匹配成功就会结束,不会继续匹配,如果想要全部查找,就要加标识g(全局匹配)。

| :在正则表达式中表示‘或’的意思

正则表达式的字符类:一组相似的字符 [ ]中括号的整体代表一个字符

排除:^ 前面我们已经知道,如果^放在正则的最开始位置,就代表起始的位置,那么如果^放在[ ]里面的话,就代表排除的意思

范围:[a-z] : a~z 的26个字符,整体只代表一位

var str = 'abc';  
var re = /a[^bde]c/;  
alert(re.test(str))//false   
var str = 'abc';  
var re = /a[bde]/;  
alert(re.test(str));// true  
       \ 数字:重复子项
   \ 1:重复的第一个子项
   \ 2:重复的第二个子项
[html] view plain copy
var str = 'abca';  
var re = /(a)(b)(c)\1/;  
alert(re.test(str));//true  
[html] view plain copy
var str1 = 'c9';  
var str2  'cc';  
alert(/\w\w/.test(str1));//true  
alert(/(\w)\1/.test(str2));//true

5、正则表达式的常用方法

test、search、mach、replace

test:正则去匹配字符串,如果匹配成功就返回真,如果匹配失败就返回假

test的写法:正则.text(字符串);

例:

CPWEB企业网站管理系统2.2 Beta
CPWEB企业网站管理系统2.2 Beta

CPWEB企业网站管理系统(以下称CPWEB)是一个基于PHP+Mysql架构的企业网站管理系统。CPWEB 采用模块化方式开发,功能强大灵活易于扩展,并且完全开放源代码,面向大中型站点提供重量级企业网站建设解决方案。CPWEB企业网站管理系统 2.2 Beta 测试版本,仅供测试,不建议使用在正式项目中,否则发生任何的后果自负。

下载
var str1 = 'abcdef';  
var re = /b/;  
alert(re.test(str));  //true

search:正则去匹配字符串,如果匹配成功,就返回匹配成功的位置,如果匹配失败就返回-1

说明

search() 方法不执行全局匹配,它将忽略标志 g。它同时忽略 regexp 的 lastIndex 属性,并且总是从字符串的开始进行检索,这意味着它总是返回 stringObject 的第一个匹配的位置。

search的写法:字符串.search(正则);

例:

var str2 = 'abcde';  
var re = /b/;  
alert(str.search(re));  // 1

match:正则去匹配字符串,如果匹配成功,就返回匹配成功的数组,如果匹配不成功就返回null。

说明:这个方法的行为在很大程度上有赖于 regexp 是否具有标志 g。

match的写法:字符串.match(正则);

例:

var  str = ‘haj123sdk443nas33kdjalsd879’;  
var re = /\d/g;  
alert(str.match(re));   //[1,2,3,4,4,3,3,3,8,7,9]

例:

var re = /\d\d/g;  
alert(str.match(re)); // [12,44,33,87];

replace:正则去匹配字符串,匹配成功的字符去替换成新的字符串,replace的第二个参数可以是字符串,也可以是一个回调函数

replace的写法:字符串.replace(正则,新的字符串); 或者为 :字符串.replace(正则,回调函数);

例:

var str = 'aaa';  
var re = /a/;  
str = str.replace(re,'b');  
alert(str);  //baa

第一个参数是正则,第二个参数是带$符的字符串

var str3 = '这是一段原始文本,"3c这要替换4d"!';  
var newStr = str3.replace( /([0-9])([a-z])/g,"$1" );  
console.log( newStr );    //输出:    这是一段原始文本,"3这要替换4"!';

注:此例子为引用点击打开链接

上面的例子是当replace的第二个参数是字符串时,相对来说是比较简单的,那么接下来我们就一起看看当replace的第二个参数是回调函数时的情况。那么在写之前我们先来了解一下正则中的匹配子项

正则中的匹配子项

匹配子项:小括号()。小括号还有另外一个意思,即分组操作

把正则中的整体叫做‘母亲’,然后把左边第一个小括号里面的正则叫第一个子项(母亲的第一个孩子),第二个小括号就是第二个子项,以此类推

注:下面的两个例子为引用点击打开链接

例:1)、回调函数只有一个参数的时候,则函数的参数为匹配的正则的整体

var str4 = '这是一段原始文本,需要替换的内容"aa这要bbb替换ccccc"!';  
var newStr = str4.replace( /[a-z]+/g,function ($0){  
    var str = '';  
    for (var i = 0; i < $0.length; i++) {  
        str += '*';  
    };  
    return str;  
} );  
console.log( newStr );    //这是一段原始文本,需要替换的内容"**这要***替换*****"!

      2)、回调函数有多个参数的时候,且看如下例题

var str5 = '这是一段原始文本,需要替换的内容"3c这要替换4d"!';  
var newStr = str5.replace( /([0-9])([a-z])/g,function (arg1,arg2,arg3,arg4,arg5){  
 console.log( arg1 );  
  console.log( arg2 );  
  console.log( arg3 );  
  console.log( arg4 );  
  console.log( arg5 );  
} );  
//输出:  
3c  
3  
c  
17  
这是一段原始文本,需要替换的内容"3c这要替换4d"!  
4d  
4  
d  
23  
这是一段原始文本,需要替换的内容"3c这要替换4d"!

上面的例子第一个参数arg1表示匹配的整体,arg2表示第一个子表达式,arg3表示第二个子表达式,接下来的参数arg4是一个整数,声明了表示子匹配在 stringObject 中出现的位置。最后一个参数是 stringObject 本身。

以上就是我对正则表达式知识的整理,具体实例也在整理中

相信看了本文案例你已经掌握了方法,更多精彩请关注php中文网其它相关文章!

相关阅读:

Spring的配置

web.xml的配置

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
Python 自然语言处理(NLP)基础与实战
Python 自然语言处理(NLP)基础与实战

本专题系统讲解 Python 在自然语言处理(NLP)领域的基础方法与实战应用,涵盖文本预处理(分词、去停用词)、词性标注、命名实体识别、关键词提取、情感分析,以及常用 NLP 库(NLTK、spaCy)的核心用法。通过真实文本案例,帮助学习者掌握 使用 Python 进行文本分析与语言数据处理的完整流程,适用于内容分析、舆情监测与智能文本应用场景。

22

2026.01.27

拼多多赚钱的5种方法 拼多多赚钱的5种方法
拼多多赚钱的5种方法 拼多多赚钱的5种方法

在拼多多上赚钱主要可以通过无货源模式一件代发、精细化运营特色店铺、参与官方高流量活动、利用拼团机制社交裂变,以及成为多多进宝推广员这5种方法实现。核心策略在于通过低成本、高效率的供应链管理与营销,利用平台社交电商红利实现盈利。

119

2026.01.26

edge浏览器怎样设置主页 edge浏览器自定义设置教程
edge浏览器怎样设置主页 edge浏览器自定义设置教程

在Edge浏览器中设置主页,请依次点击右上角“...”图标 > 设置 > 开始、主页和新建标签页。在“Microsoft Edge 启动时”选择“打开以下页面”,点击“添加新页面”并输入网址。若要使用主页按钮,需在“外观”设置中开启“显示主页按钮”并设定网址。

48

2026.01.26

苹果官方查询网站 苹果手机正品激活查询入口
苹果官方查询网站 苹果手机正品激活查询入口

苹果官方查询网站主要通过 checkcoverage.apple.com/cn/zh/ 进行,可用于查询序列号(SN)对应的保修状态、激活日期及技术支持服务。此外,查找丢失设备请使用 iCloud.com/find,购买信息与物流可访问 Apple (中国大陆) 订单状态页面。

184

2026.01.26

npd人格什么意思 npd人格有什么特征
npd人格什么意思 npd人格有什么特征

NPD(Narcissistic Personality Disorder)即自恋型人格障碍,是一种心理健康问题,特点是极度夸大自我重要性、需要过度赞美与关注,同时极度缺乏共情能力,背后常掩藏着低自尊和不安全感,影响人际关系、工作和生活,通常在青少年时期开始显现,需由专业人士诊断。

7

2026.01.26

windows安全中心怎么关闭 windows安全中心怎么执行操作
windows安全中心怎么关闭 windows安全中心怎么执行操作

关闭Windows安全中心(Windows Defender)可通过系统设置暂时关闭,或使用组策略/注册表永久关闭。最简单的方法是:进入设置 > 隐私和安全性 > Windows安全中心 > 病毒和威胁防护 > 管理设置,将实时保护等选项关闭。

7

2026.01.26

2026年春运抢票攻略大全 春运抢票攻略教你三招手【技巧】
2026年春运抢票攻略大全 春运抢票攻略教你三招手【技巧】

铁路12306提供起售时间查询、起售提醒、购票预填、候补购票及误购限时免费退票五项服务,并强调官方渠道唯一性与信息安全。

178

2026.01.26

个人所得税税率表2026 个人所得税率最新税率表
个人所得税税率表2026 个人所得税率最新税率表

以工资薪金所得为例,应纳税额 = 应纳税所得额 × 税率 - 速算扣除数。应纳税所得额 = 月度收入 - 5000 元 - 专项扣除 - 专项附加扣除 - 依法确定的其他扣除。假设某员工月工资 10000 元,专项扣除 1000 元,专项附加扣除 2000 元,当月应纳税所得额为 10000 - 5000 - 1000 - 2000 = 2000 元,对应税率为 3%,速算扣除数为 0,则当月应纳税额为 2000×3% = 60 元。

39

2026.01.26

oppo云服务官网登录入口 oppo云服务登录手机版
oppo云服务官网登录入口 oppo云服务登录手机版

oppo云服务https://cloud.oppo.com/可以在云端安全存储您的照片、视频、联系人、便签等重要数据。当您的手机数据意外丢失或者需要更换手机时,可以随时将这些存储在云端的数据快速恢复到手机中。

172

2026.01.26

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
React 教程
React 教程

共58课时 | 4.2万人学习

TypeScript 教程
TypeScript 教程

共19课时 | 2.5万人学习

Bootstrap 5教程
Bootstrap 5教程

共46课时 | 3万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号