ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

JavaScript基础回顾知识点记录4-正则表达式篇

2022-08-12 11:30:33  阅读:192  来源: 互联网

标签:知识点 console log 正则表达式 JavaScript var 匹配 reg


  • js 中 正则表达式使用
    • 创建正则对象和test方法使用
      		/*
      			创建正则表达式的对象
      			语法: var 变量 = new RegExp("正则表达式","匹配模式")  或者 var 变量 = /正则表达式/
      			匹配模式:  i:忽略大小写 。    g:全局匹配模式		
      		*/
      		//var reg = new RegExp("a","i");
      		var reg = /a/i;
      		var str = "1A2d3f4g6h8";
      		
      		// 正则表达式的方法: test() : 检查字符串是否符合正则表达式规则,符合返回true,否则返回false
      		console.log(reg.test(str));	//输出true 
      
    • 字符串和正则的相关方法
      		// split() 支持正则表达式匹配拆分字符串。该方法默认会走全局匹配。
      		var res = str.split(/[A-z]/);
      		console.log(res);	//输出["1", "2", "3", "4", "6", "8"]
      		
      		// search() 搜索字符串中是否有指定内容,不能全局匹配,只能搜索第一个符合条件的位置
      		var str1 = "hello abc hello aec";
      		var res2 = str1.search(/a[be]c/);
      		console.log(res2);	//输出6( 第一个匹配的abc的位置)
      		
      		/*
      			match()  根据正则表达式,从一个字符串中将符合条件的内容提取出来。
      			match默认只会找到第一个符合要求的内容,需要检索全部需要改为全局匹配模式,且可以设置多个匹配模式
      			匹配到的内容封装到数组中保存
      		*/
      		var str2 = "1a2b3c4d5e6f7C";
      		var res3  = str2.match(/[A-z]/gi);	// gi表示全局匹配且不区分带小写
      		console.log(res3);	//输出["a", "b", "c", "d", "e", "f", "C"]
      		
      		/*
      			replace() 将字符串指定内容替换成新的内容,默认只会替换第一个
      			第一个参数表示: 被替换的内容,可以用正则表达式
      			第二个参数表示: 新的内容(替换为""的话,就是删除匹配的元素)
      		*/
      		var str3 = "1a2a3a4a5a";
      		var res4 = str3.replace("a","@@@");
      		var res5 = str3.replace(/a/gi,"@@@");
      		var res6 = str3.replace(/a/gi,"");
      		console.log(res4);	//输出1@@@2a3a4a5a
      		console.log(res5);	//输出1@@@2@@@3@@@4@@@5@@@
      		console.log(res6);	//12345
      
    • 正则语法记录
      • {n} 表示出现n次;{m,n} 出现m-n次;{m,} m次以上;表示至少一次
      • *表示0个或多个;?表示0个或1个
      • ^表示开头;$表示结尾
      • .表示任意字符
      • \表示转义字符;比如查询是否含有. 则写为 /\./
      • 构造函数定义正则使用转义字符\ 需要注意:var reg = new RegExp("\\.","i"); 等价于 var reg = /\./;
    • 小练习:检测手机号码合法性
      		/*
      			检查手机号是否合法:1开头,第二位3-9任意数,三位之后任意数9个
      		*/ 
      		var phone = "13583404829";
      		var reg2 = /^1[3-9][0-9]{9}$/;
      		console.log(reg2.test(phone));  //输出true
      

标签:知识点,console,log,正则表达式,JavaScript,var,匹配,reg
来源: https://www.cnblogs.com/study-hmz/p/16579230.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有