资讯专栏INFORMATION COLUMN

正则:个人使用和踩坑收集

Pandaaa / 1846人阅读

摘要:和的区别一个是贪婪和非贪婪匹配的问题需要了解两者的区别可以看持续更新欢迎补充欢迎建议欢迎纠正

具体使用场景
1 以任意长度分割字符创

var arr = str.split(/s+/)

2 将三列的表格数据转换成相应的表格html字符串
(前提将表格字符串通过word转成‘xx xxx xx;xxx xx xx;xx xx xx;’的格式)

var arr = str.split(";");
var text = "";
for (var x in arr) {
  var arr2 = arr[x].split(/s+/);
  var str2 =
    "" +
    arr2[0] +
    "" +
    arr2[1] +
    "" +
    arr2[2] +
    "";
  text += str2;
}

表格例子:

3 金额

 reg = /^([1-9]d*)(.d*)?$/;

4 禁止输入emoji表情

 let reg = /[^u0020-u007Eu00A0-u00BEu2E80-uA4CFuF900-uFAFFuFE30-uFE4FuFF00-uFFEFu0080-u009Fu2000-u201fu2026u2022u20ac
]/g;
            if (text.match(reg)) {
                text = text.replace(reg, "");
            }

5 身份证号码

/(^d{15}$)|(^d{18}$)|(^d{17}(d|X|x)$)/;

6 匹配2-6个中文

/^[u4E00-u9FA5]{2,6}$/;

7 不以某个字符串开头的表示(例如 不以typedef 开头)

/^(?!typedef)/ 

8 用这个匹配当前文件的所有打的console.log 然后一次性删除

[sS]*?console.log[sS]*?;

使用技巧

1 exec和match的区别

exec每次执行的开始匹配的index都会改变,match每次都是0

exec 是正则表达式的方法,match是字符串的方法

2 match 某个str的时候返回值里面带有匹配到的分组,但是如果reg是全局模式,那么就不会返回匹配到的分组。
3 . 和.?的区别 一个是贪婪和非贪婪匹配的问题
需要了解两者的区别可以看

https://segmentfault.com/a/11...

持续更新 TBC...
欢迎补充 欢迎建议 欢迎纠正

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/102362.html

相关文章

  • webpack import() 动态加载模块踩坑

    摘要:根据规范实现了用于动态加载的方法。在浏览器运行到这一行代码时,就会自动请求这个资源,实现异步加载。为减少主包大小,我们希望动态加载这些页面。所以的正确姿势,应该是尽可能静态化表达包所处的路径,最小化变量控制的区域。 import webpack根据ES2015 loader 规范实现了用于动态加载的import()方法。 这个功能可以实现按需加载我们的代码,并且使用了promise式的...

    GeekGhc 评论0 收藏0
  • 快应用list组件的那些事儿

    摘要:本文是个人近段时间在开发快应用过程中,对快应用的组件使用的一些体会和踩坑的记录。会简要分析一下快应用中组件是怎样优化和渲染视图的原理。 本文是个人近段时间在开发快应用过程中,对快应用的list组件使用的一些体会和踩坑的记录。会简要分析一下快应用中list组件是怎样优化和渲染视图的原理。希望能给你开发快应用带来一些帮助。 list组件的使用方法 首先我们来看一下快应用中list组件的使用...

    hzx 评论0 收藏0
  • 快应用list组件的那些事儿

    摘要:本文是个人近段时间在开发快应用过程中,对快应用的组件使用的一些体会和踩坑的记录。会简要分析一下快应用中组件是怎样优化和渲染视图的原理。 本文是个人近段时间在开发快应用过程中,对快应用的list组件使用的一些体会和踩坑的记录。会简要分析一下快应用中list组件是怎样优化和渲染视图的原理。希望能给你开发快应用带来一些帮助。 list组件的使用方法 首先我们来看一下快应用中list组件的使用...

    Labradors 评论0 收藏0
  • 小程序踩坑记录

    摘要:小程序踩坑记录小程序现阶段缺陷还很多,在安卓手机上的性能也是很糟糕,估计实用性还不高。路由设置必须有序小程序的页面都必须在注册,但这不是随便登记一下就行了,页面登记的顺序一定是有层级关系的。 小程序踩坑记录 小程序现阶段缺陷还很多,在安卓手机上的性能也是很糟糕,估计实用性还不高。一步一步都是坑,这里作为个人踩坑收集用(内含吐槽),也是经验分享,欢迎issues讨论。 框架部分 1、残念...

    lily_wang 评论0 收藏0
  • angular2 + JSSDK的微信分享定制总结

    摘要:本篇文章就记录我的做微信分享信息定制的过程和踩坑总结。但是,这就要求在每个组件中都加微信分享代码,会导致维护困难。 在微信浏览器内打开任何网页,若不配置分享接口,微信会默认使用如下信息作为分享信息: 默认标题:HTML的title 默认连接:当前页面的地址,即location.href 默认图片:会取当前页面body内最前面的一张符合条件的图片(尺寸必须大于300px × 300px...

    qylost 评论0 收藏0

发表评论

0条评论

Pandaaa

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<