一些常用的正则表达式(个人收集)
我特别容易忘记东西,写下来备用
高手请绕道
1.图片的正则:
<img\b[^<>]*?\bsrc[\s\t\r\n]*=[\s\t\r\n]*[""']?[\s\t\r\n]*(?<imgUrl>[^\s\t\r\n""'<>]*)[^<>]*?/?[\s\t\r\n]*>
解释:捕获组<imgUrl>的值为图片的src
2.A标签正则:
<a\b[^<>]*?\bhref[\s\t\r\n]*=[\s\t\r\n]*[""']?[\s\t\r\n]*(?<hrURL>[^\s\t\r\n""'<>]*)[^<>]*?/?[\s\t\r\n]*>
解释:捕获组<hrURL>的值为链接的href
3.捕获组的语法:
例如有一段html代码:
<h2>两只小蜜蜂啊</h2>这里没换行<h2>灰在花丛中啊</h2>这里换行了
<h2>左灰灰,右灰灰....</h2>
<h2>灰啊灰啊....</h2>
需要得到每个<h2>标签中的内容
采用这个正则:<h2>*(?<title>.*)</h2>来匹配的话,效果是,获取到了第一行中以第一个<h2>开头,以最后一个</h2>结尾的文本,捕获组title的结果集为:
两只小蜜蜂啊</h2>这里没换行<h2>灰在花丛中啊.
左灰灰,右灰灰....
灰啊灰啊....
从上面可以看出来,没换行的会从第一个开始匹配到最后一个结束,当然换行了就匹配不到了,因为没加换行符.
但是现在我每次只想取得一对<h2>标签中的内容,怎么搞?
这就需要用到正则里的懒惰模式,将上面的正则改成:<h2>*(?<title>.*?)</h2> :此时就没问题了
捕获组title的结果集为:
两只小蜜蜂啊
灰在花丛中啊
左灰灰,右灰灰....
灰啊灰啊....
4.URL正则
不知到有没有亲们遇到这种需求:一大段文本,需要你把这一段文本中的URL全部匹配出来,自动加上超链,变成可以点击的链接,反正我是遇到了
这个URL的正则灰常实用而且灰常准,网上很多的URL正则都是扯淡的,要不就是适应性太差,如下:
http(s)?://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?
但是使用这个正则的时候有个问题:
就是如果一个url后面紧跟着一串汉字.在工具里面(我用这个工具Regex Match Tracer)测试是没有问题的,但是拿到VS2010里面写代码测试,会把这串汉字也匹配出来,直到出现换行符的地方为止,这也是我百思不得其解的地方,莫非.Net中的正则还有什么不一样吗?....求解答
That's over, Thanks for you watching
转载于:https://www.cnblogs.com/yesterdays/archive/2013/01/04/2844916.html
一些常用的正则表达式(个人收集)相关推荐
- 收集常用的正则表达式
收集常用的正则表达式,欢迎补充. 1.匹配IP地址 function isIP(value){return /^((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\ ...
- php 匹配双字节字符串,收集一些常用的正则表达式(匹配中文字符、匹配双字节字符、匹配HTML标记、匹配空行 and so on~~~)...
正则表达式用于字符串处理,表单验证等场合,实用高效,但用到时总是不太把握,以致往往要上网查一番.我将一些常用的表达式收藏在这里,作备忘之用.本贴随时会更新,请持续关注本站. 匹配中文字符的正则表达式: ...
- php正则运用,php中常用的正则表达式的介绍及应用实例代码
更全面的实例,可以参考 最常用的PHP正则表达式收集整理 //www.jb51.net/article/14049.htm php 正则表达式小结 //www.jb51.net/article/198 ...
- php的正则表达式函数,php中常用的正则表达式函数
php中常用的正则表达式函数 * preg_match() * preg_match_all() * preg_replace() * preg_filter() * preg_grep() * pr ...
- 12个最常用的正则表达式,帮助你解决50%的问题
英文 | https://medium.com/frontend-canteen/you-dont-need-to-fully-understand-regex-you-just-need-to-kn ...
- 正则和常用的正则表达式
一.正则表达式(regular expression简称res) 1.定义: 一个正则表达式就是由普通字符以及特殊字符(称为元字符)组成的文字模式.该模式描述在查找文字主体时待匹配的一个或多个字符串. ...
- 常用的正则表达式分享
常用的正则表达式 搜集自互联网,由我本人进行整理和排版,不敢保证内容全部正确,如有错误,还请在评论中指出,我会及时更正. 校验数字的表达式 数字 /^[0-9]*$/ n位的数字 /^\d{n}$/ ...
- linux常用基础命令操作收集
linux常用基础命令操作收集,以下命令基于CentOs6.x 1.日常操作命令 **查看当前所在的工作目录 pwd **查看当前系统的时间 date **查看有谁在线(哪些人登陆到了服务器) who ...
- 正则满足中文的顿号_常用的正则表达式、正则表达式之断言
一.常用的正则表达式: 1.手机号码:/^(13[0-9]|14[5|7]|15[0|1|2|3|5|6|7|8|9]|18[0|1|2|3|5|6|7|8|9])d{8}$/ 2.国内电话号码:/d ...
- 常用的正则表达式验证类
搜集的一些常用的正则表达式验证类: using System; using System.Text.RegularExpressions; namespace CommonTools { ...
最新文章
- GAN简介及其常见应用
- 2017-9-13:学习笔记
- 朱俊彦团队最新论文:用GAN监督学习给左晃右晃的猫狗加表情,很丝滑很贴合...
- 网站哪些细节做不好会导致网站的跳出率过高?
- Codeforces 848C. Goodbye Souvenir
- Git本地仓库与远程仓库关联
- 开机慢 不换SSD如何提升Windows 10开机速度
- SAP Cloud Platform approuter的本地安装
- Python库安装路径查询MAC,也可以看到pip到底是给哪个版本的Python安装库了
- 遗传算法求解装箱问题c语言,装箱或背包问题? (或者遗传算法解决)
- stl map 查找不到返回什么_STL 容器结构和分类
- 百度之星程序设计大赛输出格式的注意
- java实训任务_java实训任务
- postgresql统一把字段小写转大写
- matlab 自激振荡,自激振荡系统matlab仿真课程设计
- 负整数补码的三种方法
- 【Linux】进程通信
- html中的input框中的value值到底是什么
- html table tb左对齐,标签之美五——网页表格的设计
- mipi屏参参数配置