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 代码,感觉还是不错的,用得也很舒服. 遇到了一个需求,有时候在阅读框架源代码的时候 , 想过滤(删除)掉源代码中的注释行,如果手动逐行删除显 ...
随机推荐
- 导出程序界面(UI)到图片
无意间看到这个需求,查阅了相关文章,有两篇不错的博客给出了解决方案,地址如下: 1.在WPF程序中将控件所呈现的内容保存成图像 2.随心所欲导出你的 UI 界面到 PDF 文件 主要使用的接口: Si ...
- 获得 LayoutInflater 实例的三种方式
在实际开发中LayoutInflater这个类还是非常有用的,它的作用类似于findViewById().不同点是LayoutInflater是用来找res/layout/下的xml布局文件,并且实例 ...
- JavaScript - 2个等号与3个等号的区别
简言之,== equality 等同,=== identity 恒等. ==, 两边值类型不同的时候,要先进行类型转换,再比较. ===,不做类型转换,类型不同的一定不等. 或: = 赋值运算符 == ...
- 用户Word写毕业论文时的文献引用方法
经过网上搜索和自己实践,找到了一种不用第三方工具的文献管理方法 通过将文献定义的成书签的形式,插入到文献中,当文献编号发生变化时,只需进行更新域操作,就可实现文献编号的理新,下面介绍具体方法: 1.首 ...
- node.js 的 os 模块
Node.js的os module 提供了一系列跟操作系统相关的操作函数,比较简单,所以功能也就十分有限.我们可以去官网看各个函数的介绍: http://nodejs.org/api/os.html ...
- Xenia and Divisors
Xenia and Divisors time limit per test 2 seconds memory limit per test 256 megabytes input standard ...
- ionic 通过下载apk升级App
上篇通过更新文件升级APP,如果遇到了比如更新插件之类的问题,上篇是无法解决的,所以为了解决这个问题,需要下载apk文件升级APP. 1.配置文件如下:{'appVersion':'1.0.0', ...
- Yii中 RBAC(基于角色的访问控制权限)表结构原理分析
这里有几个概念很重要,我简单用大白话说一下; 权限:就是指用户是否可以执行哪些操作. 如:小张可以发帖.回帖.浏览,小红只能回帖.浏览 角色:就是上面说的一组操作的集合. 如:高级会员有发帖.回帖.删 ...
- 领域实体框架Rafy2 发布了
在2009年我在codeplex发布了1.0版本OpenExpressApp,下载地址:http://openexpressapp.codeplex.com/.OEA 1.0 作为我十多年开发工作的一 ...
- Struts2的基本流程的详细介绍
Struts2基本流程 概述: Struts2框架由三部分构成:核心控制器.业务控制器和用户实现的业务逻辑组件.在这三部分中,struts2框架提供了核心控制器StrutsPrepareAndExec ...