javascript 之正则匹配HTML
| 正则表达式 | <(\S*?) [^>]*>.*?</\1>|<.*? /> |
|---|---|
| 匹配 | <html>hello</html>|<a>abcd</a> |
| 不匹配 | abc|123|<html>ddd |
| 正则表达式 | ^[^<>`~!/@\#}$%:;)(_^{&*=|'+]+$ |
|---|---|
| 匹配 | This is a test |
| 不匹配 | <href = | <br> | That's it |
| 正则表达式 | <!--.*?--> |
|---|---|
| 匹配 | <!-- <h1>this text has been removed</h1> --> | <!-- yada --> |
| 不匹配 | <h1>this text has not been removed</h1> |
| 正则表达式 | (\[(\w+)\s*(([\w]*)=('|")?([a-zA-Z0-9|:|\/|=|-|.|\?|&]*)(\5)?)*\])([a-zA-Z0-9|:|\/|=|-|.|\?|&|\s]+)(\[\/\2\]) |
|---|---|
| 匹配 | [link url="http://www.domain.com/file.extension?getvar=value&secondvar=value"]Link[/li |
| 不匹配 | [a]whatever[/b] | [a var1=something var2=somethingelse]whatever[/a] | [a]whatever[a] |
| 正则表达式 | href=[\"\'](http:\/\/|\.\/|\/)?\w+(\.\w+)*(\/\w+(\.\w+)?)*(\/|\?\w*=\w*(&\w*=\w*)*)?[\"\'] |
|---|---|
| 匹配 | href="www.yahoo.com" | href="http://localhost/blah/" | href="eek" |
| 不匹配 | href="" | href=eek | href="bad example" |
| 正则表达式 | "([^"](?:\\.|[^\\"]*)*)" |
|---|---|
| 匹配 | "This is a \"string\"." |
| 不匹配 | "This is a \"string\". |
| 正则表达式 | (?i:on(blur|c(hange|lick)|dblclick|focus|keypress|(key|mouse)(down|up)|(un)?load|mouse(move|o(ut|ver))|reset|s(elect|ubmit))) | ||
|---|---|---|---|
| 匹配 |
|
||
| 不匹配 | click | onandon | mickeymouse |
| 正则表达式 | (?s)/\*.*\*/ |
|---|---|
| 匹配 | /* .................... */ | /* imagine lots of lines here */ |
| 不匹配 | */ malformed opening tag */ | /* malformed closing tag /* |
| 正则表达式 | <(\S*?) [^>]*>.*?</\1>|<.*? /> |
|---|---|
| 匹配 | <html>hello</html>|<a>abcd</a> |
| 不匹配 | abc|123|<html>ddd |
| 正则表达式 | \xA9 |
|---|---|
| 匹配 | © |
| 不匹配 | anything |
| 正则表达式 | src[^>]*[^/].(?:jpg|bmp|gif)(?:\"|\') |
|---|---|
| 匹配 | src="../images/image.jpg" | src="http://domain.com/images/image.jpg" | src='d:\w |
| 不匹配 | src="../images/image.tif" | src="cid:value" |
| 正则表达式 | /\*[\d\D]*?\*/ |
|---|---|
| 匹配 | /* my comment */ | /* my multiline comment */ | /* my nested comment */ |
| 不匹配 | */ anything here /* | anything between 2 seperate comments | \* *\ |
| 正则表达式 | <[a-zA-Z]+(\s+[a-zA-Z]+\s*=\s*("([^"]*)"|'([^']*)'))*\s*/> |
|---|---|
| 匹配 | <img src="test.gif"/> |
| 不匹配 | <img src="test.gif"> | <img src="test.gif"a/> |
javascript 之正则匹配HTML的更多相关文章
- javascript的正则匹配
前段时间需要用到比较多的js代码,当时有点搞不清test和match方法的区别,向百度求助,找到了这边关于正则匹配的博文,感谢作者分享. 原文地址[http://blog.sina.com.cn/s/ ...
- JavaScript 中正则匹配时结果不一致的问题
创建示例项目 考察如下场景,我们有个输入框组件,输入时同时进行校验. interface IInputProps { label: string; } function Input({ label } ...
- 常用的JavaScript正则匹配规则代码收藏,很实用
收集一些常用的JavaScript正则表达式匹配规则,比如匹配电话号码.Email.中文字符.身份证号.邮编.QQ号.过滤空白行.匹配特定数字等.觉得这玩意是很有用的,只不过自己水平菜,老是自己写不出 ...
- JavaScript 正则匹配中文,中文符号,空格,全数字,以https:// 开头的url,用于各种场景的输入校验
业务场景1: 密码输入框需要验证输入中文,中文符号,空格等情况,以便于给出错误提示 业务场景2: 输入框只允许输入数字的情况 业务场景3: 输入框允许输入均为数字或以https:// 开头的url的情 ...
- JavaScript——正则匹配、正则提取、正则替换
正则匹配 // 匹配日期 var dateStr = '2015-10-10'; var reg = /^\d{4}-\d{1,2}-\d{1,2}$/ console.log(reg.test(da ...
- js正则匹配的一个日常应用
应用实例 1 /** 将段落中的 \n 转换为 <p></p>, 规范存储 */ 2 function formatParagraphForStore(val) { 3 var ...
- JS中正则匹配的三个方法match exec test的用法
javascript中正则匹配有3个方法,match,exec,test: match是字符串的一个方法,接收一个RegExp对象做为参数: match() 方法可在字符串内检索指定的值,或找到一个或 ...
- php中的正则函数主要有三个-正则匹配,正则替换
php中变量的声明? 由于php声明变量的时候, 不支持使用 var关键字, 又不能直接写一个变量名字, 孤零零的放在那里, 所以, 在php中声明变量的方式, 同时也是给变量初始化的形式, 即: & ...
- phpstorm 正则匹配删除注释行(替换注释行为空行)
使用phpstorm 来编写php 和javascript 代码,感觉还是不错的,用得也很舒服. 遇到了一个需求,有时候在阅读框架源代码的时候 , 想过滤(删除)掉源代码中的注释行,如果手动逐行删除显 ...
随机推荐
- 调用 webapi的put和delete 报"Method Not Allowed" 405 错误。
修改引用到webapi的Dll文件对应的项目的web.config 选择生成读写方法webapi会生成四个读写的方法(CRUD),两个获取数据的.一个更新.一个删除,默认情况下更新和删除是不对外开外的 ...
- OceanBase server处理网络包的回调逻辑
OceanBase处理网络包的逻辑还是蛮绕的,这里以UPS为例,作为给自己的备忘. UPS代码的main.cpp中调用ObUpdateServerMain的start启动server.start函数会 ...
- itextpdf JAVA 输出PDF文档
使用JAVA生成PDF的时候,还是有些注意事项需要处理的. 第一.中文问题,默认的itext是不支持中文的,想要支持,需要做些处理. 1.直接引用操作系统的中文字体库支持,由于此方案限制性强,又绑定了 ...
- django shell 集合
1.创建project $ django-admin startproject mysite 2.真正执行,修改数据库 $ python manage.py migrate 3.运行服务 $ pyth ...
- NPM私有服务器架设 FOR CentOS
确保计算机能够连接互连网. 一.安装 Couchdb1.6 1.(CentOS 6.7)如果版本低于6.7请使用下面命令更新系统库. yum update 2.使用下面命令安装依赖库 yum inst ...
- 实现一个 Variant
很多时候我们希望能够用一个变量来保存和操作不同类型的数据(比如解析文本创建 AST 时保存不同类型的结点),这种需求可以通过继承来满足,但继承意味着得使用指针或引用,除了麻烦和可能引起的效率问题,该做 ...
- 论文第4章:iOS绘图平台的实现
面向移动设备的矢量绘图平台设计与实现 Design and Implementation of Mobile Device-oriented Vector Drawing Platform 引用本论文 ...
- STL中的set/multiset小结
(1)使用set/multiset之前必须包含头文件<set>:#include<set> (2)namespace std{ template <class T, cl ...
- 8月11日嵌入式Linux开发免费项目体验邀您参与
嵌入式Linux开发免费项目体验开课啦~~我们特意邀请到粤嵌金牌讲师和技术专家,为大家带来精彩有趣的嵌入式公开课,涉及到嵌入式学习.研发的方方面面.课堂中我们能体验到的不仅仅是最新资讯.技术体验,还有 ...
- [IR] Evaluation
无序检索结果的评价方法: Precision P = tp/(tp + fp) Recall R = tp/(tp + fn) Accuracy = (tp + tn) ...