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 代码,感觉还是不错的,用得也很舒服. 遇到了一个需求,有时候在阅读框架源代码的时候 , 想过滤(删除)掉源代码中的注释行,如果手动逐行删除显 ...
随机推荐
- Linux 导入epel源
rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm rpm -ivh http:// ...
- TSPL学习笔记(3):排序算法练习
快速排序 快排的详细介绍见,简单的说就是取输入序列中的首元素m,然后将除首元素m以外的其它元素分成两组,小于等于m的一组和大于m的一组.将3组元素组合成输入队列:小于等于m + m + 大于m. 下面 ...
- Nginx HTTP负载均衡和反向代理配置
当前大并发的网站基本都采用了Nginx来做代理服务器,并且做缓存,来扛住大并发.先前也用nginx配置过简单的代理,今天有时间把整合过程拿出来和大家分享,不过其中大部分也是网上找来的资源. nginx ...
- 浅析MongoDB数据库的海量数据存储应用
[摘要]当今已进入大数据时代,特别是大规模互联网web2.0应用不断发展及云计算所需要的海量存储和海量计算发展,传统的关系型数据库已无法满足这方面的需求.随着NoSQL数据库的不断发展和成熟,可以较好 ...
- 配置svn
Linux搭建SVN Server 其中包括添加防火墙规则
- xfire框架内部基本结构解析
1 概述 xfire是webservice的一个实现框架,是apache旗下CXF的前身,是一个比较被广泛使用的webservice框架,网上有很多关于如何使用xfire或cxf的hello worl ...
- python高效解析日志入库
python脚本解析日志文件入库一般有三个重要的步骤:读文件.解析文件.入库.在这三个方面下功夫,可确保我们获得最优的性能(这里不讨论并发) 1 读文件:一次读一行,磁盘IO太多,效率低下:一次性读如 ...
- (转)在低版本的SDK里使用高版本函数@SuppressLint("NewApi") or @TargetApi?
@SuppressLint 和 @TargetApi达到的效果是一样的,相对于SuppressLint ,TargetApi会根据函数里使用的API,严格匹配SDK版本,给出编译错误,但是Suppre ...
- net组件转化成COM组件
第一步:生成秘钥文件 强名称工具 (Sn.exe) 有助于使用强名称对程序集进行签名.Sn.exe 提供了用于密钥管理.签名生成和签名验证的选项. 1.使用Visual Studio 命令 Visua ...
- div 等高
padding-bottom: 5000px; margin-bottom: -5000px;