正则表达式、字符串拼接:所有程序设计语言中都有相关应用,不同语言之间稍有差异;[w3school字典可查询(更新慢);匹配/处理字符串在开发中是前端处理,所以正则表达式必掌握]
1、转义字符 -> 其可将\后面的符号转换为文本输出 ->常用的\\; \"; \n; \r; \t;(输出+-*/等等也OK) ->主要解决输出冒号,引号等需求;例如“回车符”底层操作系统实现:\n\r的结合;

2、正则表达式 -> 其是对字符串执行模式匹配的强大工具,也是匹配特殊字符或有特殊匹配原则字符的最佳选择 -> RegExp是js内置对象,调用对象属性、方法进行字符串匹配,应用场景:手机号、邮箱等的验证;
(1).创建方式:
[1].字面量/直接量创建:var reg = /abc/; var reg1 = /abc/img;
[2].new的方式:var reg1 = new RegExp("","");//两个参数都为字符串,首个参数写匹配的规则,第二个参数写属性,没有可省略;

(2).修饰符(属性):img;//可任意组合或只写某个属性;[正则表达式对象的属性]

(3).表达式:[正则表达式的匹配,匹配过的字符便不再匹配了];[/d/w]:表达式内也可以写元字符;

(4).元字符:其与表达式相互对应,每位等同于[];(\xxx \xdd \uxxxx:很少使用)


(5).量词:其和元字符配合使用,类似于乘积 -> +表示无数个,*表示0个和无数个


(6).常用概念:

(7).正则表达式对象的属性和方法:

(8).例题


3、字符串拼接 ->几乎所有程序设计语言都有相关操作
(1).ECMAScript标准说明:字符串一旦创建,其的值便不会发生改变,若要改变某个变量保存的字符串,必须先销毁原来的字符串;[原始值都是如此,创建后便不会发生改变] var str = 'javascript'; str = str + "nodejs";//内部操作过程:新创建一个能容纳10个字符的新字符串,里面添加这两个字符,然后销毁原来的字符串"javascript","nodejs";(不要误认为是在原字符串上直接进行的拼接)
(2).字符串拼接 ->不同的字符串拼接方法,耗费计算机资源不同,性能高低也不同 ->其于执行次数也有关系(可使用时间戳getTime();测试) ->日常开发中谈到的字符串拼接大多为"+"拼接;
[1]."+"连接符;[2].通过数组的join(); [3].通过对象属性来连接字符串(了解);

补充:"+"拼接方法 ->性能还是蛮高的 -> str += "<li>"+ele.title+"-"+ele.data+"</li>"// "+ xxx +"

JS中三种字符串连接方式及其性能比较:https://www.cnblogs.com/programs/p/5554742.html
正则表达式:http://www.w3school.com.cn/jsref/jsref_obj_regexp.asp
网友评论