JS的正则表达式

33 篇文章 0 订阅
24 篇文章 0 订阅

2019-1-28 复习

还记得刚开始接触JS中的正则表达式,是源代码中压缩后的一大段正则表达式(对于强迫症的我就是一种考验):一方面惊叹这部分代码的神奇之处(可以进行用户表单验证),同时对着一堆“乱码”无从下手。正则表达式,如果没有标注,没有换行,直接阅读,困难很大。当时在CSDN上一个一个查也没找到合适的结果。。。于是暂时放下来看其他代码

if(RegExp 没有换行){
    if(RegExp 没有标注){  //就是一堆“乱码” var reg1 = /^[0-9a-zA-Z]$/ }    }

静下心来,首先分析外部结构:整体上范围是g或者i。正则表达式的含义类似于office中的高级查找。

开始结束符号/^$/,表示个数的大括号{m,n},表示前后边界的中括号[0-9a-z],还有预定义的\d\d\w等等。这几个熟悉之后,正则表达式就能看懂一部分了(知道开头结尾和基本结构了)。

接下来,接触了几个常见的正则表达式验证表单的方法:验证电话号码,验证邮箱,验证手机号码,验证中文英文姓名等等(熟悉这几个之后就会豁然开朗),可以说这就是正则表达式的一个瓶颈。

剩下的东西,就是常用的方法,replace search 比较常用。在字符串中trim具有兼容性,部分情况需要自己封装trim函数。

    

                // 常用方法
		str.trim();
		str.replace(/today/,"tomorrow");
		str.search(/bc/);
		等价于indexOF('bc');


		function trim(str){
			var aaa = str.replace(/(^\s+)|(\s+$)/g,'');
			return aaa;
		}
		String.prototype.aaa = function(){
			var aaa = str.replace(/(^\s+)|(\s+$)/g,'');
			return aaa;
		}
		console.log(str.aaa());
		// 面向对象封装
		str.trim();
		str.replace(/today/,"tomorrow");
		str.search(/bc/);
		等价于indexOF('bc');


		function trim(str){
			var aaa = str.replace(/(^\s+)|(\s+$)/g,'');
			return aaa;
		}
		String.prototype.aaa = function(){
			var aaa = str.replace(/(^\s+)|(\s+$)/g,'');
			return aaa;
		}
		console.log(str.aaa());
		// 面向对象封装

 

有些技术目前工作中使用不多,但是很重要,需要扎实掌握。例如数组和对象的API等基本知识要经常复习中。

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值