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 代码,感觉还是不错的,用得也很舒服. 遇到了一个需求,有时候在阅读框架源代码的时候 , 想过滤(删除)掉源代码中的注释行,如果手动逐行删除显 ...
随机推荐
- css3 定义选择器
引言:CSS样式规则有两个主要部分.选择器决定将格式化应用到哪些元素.声明则定义要应用的格式化. 构造选择器 选择器可以定义五个不同的标准来选择要进行格式化的元素. 元素的类型或者名称.如下所示. h ...
- Object c 基础知识
文件类型说明:.h 头文件,用于定义类.实例变量及类中的方法等定义信息(interface)..m 源文件,定义方法体,可实现objce-c和c方法(implementation)..mm c++源文 ...
- STM32 程序所占用空间计算 && FLASH存储的起始地址计算
程序编译完成,会乘车program size .. 对STM32容量选型或者 计算FLASH 充当EEPROM起始地址时会用到此参数. 按照下面截图 程序空间 = (16700+732+4580)/ ...
- 《Programming with Objective-C》第三章 Working with Objects
Object和普通变量的区别 If you’re used to using terms like the stack and the heap, a local variable is alloca ...
- svn代码版本管理总结
svn代码版本管理 1.0开发,做dev1.0的branch此时的目录结构svn://proj/ +trunk/ (不负担开发任务) +branches ...
- tcp为什要三次握手
准备知识: 单工:信息只能单向传递.发送-->接收,单向,不能返回响应. 双工:指的是信息可双向发送. 全双工:信息可同时双向传递. 半双工:不能同时,单行道,一边传输完了,另一边才能发起传输. ...
- ruby -- 进阶学习(十六)ckeditor去除“浏览服务器”按钮
FROM:http://blog.163.com/zjc_8886/blog/static/2408175201011222590967/ 实现方法: 由于ckeditor中的"上传图片& ...
- ServiceStack Redis客户端的bug
client.Set("key", 0); 当使用上面的语句设置 真正存入redis的却是一个空白字符,而不是0 跟了一下源码,发现 private static byte[] T ...
- 比较HTML元素和Native组件的区别
我们开发web应用,会使用到各种Html基本元素,比较<div>,<span>,<img>等. 当我们在开发React Native时,我们不能使用HTML元素,但 ...
- [Design Patterns] 4. Creation Pattern
设计模式是一套被反复使用.多数人知晓的.经过分类编目的.代码设计经验的总结,使用设计模式的目的是提高代码的可重用性,让代码更容易被他人理解,并保证代码可靠性.它是代码编制真正实现工程化. 四个关键元素 ...