正则学习笔记

用途

  字符匹配

语法

  常用元字符

      

      []     区间范围框 枚举值  [a-z0-9A-Z_]

      |    分枝条件或

      \    特殊转义符(取消转义)

      \W        [^A-Za-z0-9_]

      [\r\n]      换行符匹配

      [\u4e00-\u9fa5]   汉字

      [\s\S]     任意字符

  限定符

        

        贪婪匹配:默认的匹配方式,尽量匹配更多的字符  .*

        懒惰匹配:若发现匹配立即返回,懒惰搜索    .*?

        例:/a.*b/.exec("/abcdedfb")  abcdedfb

          /a.*?b/.exec("/abcdedfb")     ab

  分组/捕获组

    ()  从左向右,以分组的左括号为标志。 \1代表分组1,js中对应RegExp.$1。 (?:exp)可以取消分组纪录

                          常用分组语法

          

Javascript的正则

  模式

    g  全局匹配,匹配后会标记lastIndex用于下一次继续匹配。

    i   忽略大小写

    m   换行匹配,影响^/$定义

  初始化

    1)/pattern/flags  2)new RegExp("pattern","flags")   字符串转义 \   => \\

    例:  /\./i=new RegExp("\\.","i")

  api

    pattern.exec(str)  执行正则匹配,获取指定匹配。静态属性RegExp.$1~$9  保存第1~第9个匹配的捕获组()的信息

/>\s*([\u4e00-\u9fa5]+.*?)<\//g.exec("<h2>第三方平台开启公测</h2>")      

[">第三方平台开启公测</", "第三方平台开启公测", index: 3, input: "<h2>第三方平台开启公测</h2>"]

    str.match(/reg/g)   

获取str匹配正则reg的所有内容      "中文abc中文123中文".match(/[^\u4e00-\u9fa5]+/g)    ["abc","123"]    

    pattern.test(str)   验证是否满足正则,不关心匹配的字符

 

参考资料:http://deerchao.net/tutorials/regex/regex.htm

 

常用正则:

XSS过滤:/^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/

url匹配正则:/http:\/\/([\w.]+)(\/[\w\/]+\/)([\w.]+)(?:\?([\w=&]+))?/g;

转载于:https://www.cnblogs.com/yinshen/archive/2013/02/17/2914764.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/494348.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Android之UI控件

本文主要包括以下内容 Spinner的使用 Gallery的使用 Spinner的使用 Spinner的实现过程是 1. 在xml文件中定义Spinner的控件 2. 在activity中获取Spinner控件 3. 定义Spinner下拉列表项数组并将下拉项的内容添加到这个数组中&#xff0c;通过这个数组建立一个下拉列表的适…

大脑如何判断该睡觉了?可能是这80种蛋白说了算

来源&#xff1a;科研圈撰文&#xff1a;Veronique Greenwood翻译&#xff1a;石云雷编辑&#xff1a;戚译引睡眠对于正常的学习和身体健康至关重要&#xff0c;但科学家们仍未完全了解睡眠在恢复大脑功能方面的作用和我们会感到困倦的原因。而通过对基因突变小鼠不寻常睡眠需求…

ImageLoader实现图片异步加载

ImageLoader是一个广泛使用的图片库,在向网络请求图片时&#xff0c;使用imageView和smartView常会产生outofmemory错误&#xff0c;这时ImageLoader可以起到很大的作用&#xff0c;主要有如下功能 一、功能特性&#xff1a; 多线程异步加载和显示图片&#xff08;图片来源于…

【每日SQL打卡】​​​​​​​​​​​​​​​DAY 26丨广告效果【难度简单】​

【未来的你&#xff0c;会感谢今天努力的你】每日两题&#xff0c;一难一易&#xff0c;每天进步一点点&#xff0c;可能会直接导致一场面试的成功&#xff0c;或工作的轻松搞定&#xff0c;从而升职加薪迎娶白富美&#xff0c;加油小伙伴&#xff01; &#x1f345;举办场地&a…

AI芯片最新格局分析

来源&#xff1a;中金公司&#xff0c;作者黄乐平、何玫与杨俊杰AI 芯片设计是人工智能产业链的重要一环。 自 2017 年 5 月以来&#xff0c;各 AI 芯片厂商的新品竞相发布&#xff0c;经过一年多的发展&#xff0c;各环节分工逐渐明显。 AI 芯片的应用场景不再局限于云端&…

原理图学习笔记一

画个草图也挺过瘾 转载于:https://www.cnblogs.com/retacn-yue/archive/2013/02/17/3263137.html

Android Studio安装与配置

谷歌已经停止支持eclipse开发android了&#xff0c;转向android studio是大势所趋&#xff0c;笔者由于电脑配置的原因&#xff0c; 以前迟迟不愿意向android studio&#xff0c;现如今因为开始学习material design,不得不转向android studio了&#xff0c; 费了一番功夫&…

材料界的魔术师:值得关注的10家超材料创业公司

来源&#xff1a;资本实验室超材料是具有人工设计的结构并呈现出天然材料所不具备的超常物理性质的人工复合结构或复合材料。典型的超材料有&#xff1a;“左手材料”、光子晶体、“超磁性材料”等。通俗地说&#xff0c;通过超材料技术&#xff0c;我们将能够摆脱来自自然界原…

Android之ScrollView

1、ScrollView和HorizontalScrollView是为控件或者布局添加滚动条 2、上述两个控件只能有一个孩子&#xff0c;但是它并不是传统意义上的容器 3、上述两个控件可以互相嵌套 4、滚动条的位置现在的实验结果是&#xff1a;可以由layout_width和layout_height设定 5、ScrollV…

百余位中外学者探讨神经科技挑战:伦理担忧与监管难题并存

来源&#xff1a;澎湃新闻“脑电图图纸也许会读出人的意识”、“脑机接口技术可能使个人的行为被他人操纵”、“人造大脑的发明可能取代人类的角色”……这些形形色色的言论道出了人们对于神经科学的道德和伦理担忧。澎湃新闻专访了神经伦理学领域的研究人员&#xff0c;就神经…

Android之ActionBar

本文主要包括以下内容 ActionBar的显示及隐藏&#xff0c;添加图标&#xff0c;返回主页 ActionBar添加ActionView,添加ActionProvider ActionBar实现Tab ActionBar添加下拉列表 ActionBar介绍 在Android 3.0中除了我们重点讲解的Fragment外&#xff0c;Action Bar也是一个…

国内智能音箱市场逐渐崛起,那么问题来了……

来源&#xff1a;AI锐见“嗨&#xff0c;Alexa&#xff0c;放首歌。”2014年&#xff0c;搭载了亚马逊虚拟语音个人助理Alexa的Echo面世&#xff0c;让人类同机器的交互方式出现了另一种可能。苹果联合创始人Steve Wozniak就曾在2016年表示&#xff0c;智能语音交互将成为计算领…

保留小数点位数和格式

JS 中 1. double运算 c parseFloat(a) parseFloat(b)) 2. 四舍五入&#xff0c;保留两位小数 c c.toFixed(2); 3. 去掉小数点后面多余的0 c c.toFixed(2)*100/100; JAVA中 Java代码 //四舍五入&#xff0c;保留指定小数位 public static Double roundDouble(Object obj, in…

Material Design入门

本文主要包括以下内容 ToolBar的使用 RecyclerView的定义与使用 ToolBar 风格 (style) 界面 (layout) 程序 (java) 首先自定义一个theme,并将AppTheme的parent改成我们自定义的theme (style.xml) <resources><style name"BaseAppTheme" parent"…

DARPA宣布未来五年将投资20亿美元开发下一波人工智能技术

来源&#xff1a;国防科技信息网作者&#xff1a;丁宏 中国船舶工业综合技术经济研究院 美国DARPA近日宣布&#xff0c;计划在未来5年内投资20亿美元用于开发下一波人工智能技术&#xff0c;寻求情境推理能力等技术的突破&#xff0c;使其有能力识别新的场景和环境并加以适应&a…

Material Design入门(二)

本文主要包括以下内容 侧滑菜单DrawerLayout实现 CardView实现 DrawerLayout介绍 drawerLayout是Support Library包中实现了侧滑菜单效果的控件&#xff0c;可以说drawerLayout是因为第三方控件如MenuDrawer等的出现之后&#xff0c;google借鉴而出现的产物。drawerLayout分…

李飞飞重回斯坦福,Andrew Moore接手谷歌云AI

来源&#xff1a;网络大数据6 月&#xff0c;海外媒体爆出「李飞飞或将离开谷歌重返斯坦福」;两周前&#xff0c;CMU 官方发布消息称 CMU 计算机学院院长 Andrew Moore 即将离职。今日&#xff0c;谷歌云博客发布的信息最终把二者的去向都敲定&#xff1a;Andrew Moore 加入谷歌…

UVA 10173 旋转卡壳

题意&#xff1a;给出一些点&#xff0c;求最小的覆盖这些点的矩形的面积。 题解&#xff1a; 枚举下边界&#xff08;是一条边&#xff09;&#xff0c;然后暴力卡壳左右边界&#xff08;点&#xff09;&#xff0c;再暴力上边界&#xff08;点&#xff09;&#xff0c;更新答…

Python Requests 丨爬虫基础入门

据说&#xff1a;看我文章的帅帅 都有个习惯&#xff1a;先点赞、收藏再看 目录 ⚽️ 一、背景知识&#xff1a;requests &#x1f3c0; 1、pip安装requests &#x1f3c8; 2、pycharm安装requests ⚾️ 3、一行代码使用requests &#x1f3be; 4、requests常用调用&…

类脑计算:让人工智能走得更远

来源&#xff1a;中国科学报像人一样思考&#xff0c;这是人们对人工智能和机器人的期待。大踏步前进的人工智能&#xff0c;似乎走到了十字路口。“机器综合智能水平和人脑相差较大&#xff0c;机器学习需要较多人工干预&#xff0c;不同人工智能模态之间交互协同较少……”近…