免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12345下一页
最近访问板块 发新帖
查看: 20329 | 回复: 41

我常用的正则表达式  关闭 [复制链接]

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
发表于 2003-10-28 21:36 |显示全部楼层
匹配html的嵌入代码
  1. <[^>]*>
复制代码


匹配[....]的嵌入码
  1. \[[^]]\{1,\}\]
复制代码


删除仅由空字符组成的行
  1. sed '/^[[:space:]]*$/d' filename
复制代码


匹配html标签
  1. /\(<[^>]*>\)/
复制代码
例如:从html文件中剔除html标签
  1. sed 's/\(<[^>]*>\)//g;/^[[:space:]]*$/d'  file.html
复制代码


例如:要从下列代码中去除"[]"及其中包括的代码
  1. [b:4c6c2a6554][color=red:4c6c2a6554]一. 替换[/color:4c6c2a6554][/b:4c6c2a6554]
  2. sed 's/\[[^]]\{1,\}\]//g' filename
复制代码


匹配日期:
  1. Month, Day, Year [A-Z][a-z]\{3,9\}, [0-9]\{1,2\}, [0-9]\{4\}
  2. 2003-01-28 或 2003.10.18 或 2003/10/10 或 2003 10 10
  3. \([0-9]\{4\}[ /-.][0-2][0-9][ /-.][0-3][0-9]\)
复制代码

匹配IP地址
  1. \([0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\)
  2. \(\([0-9]\{1,3\}\.\)\{3\}[0-9]\{1,3\}\)
复制代码


匹配数字串
  1. [-+]*[0-9]\{1,\} 整数
  2. [-+]*[0-9]\{1,\}\.[0-9]\{1,\}  浮点数
复制代码


从字串中解析出两个子串(前2各字符和后9个字符)
  1. echo "WeLoveChinaUnix"|sed -e 'H;s/\(..\).*/\1/;x;s/.*\(.\{9\}\)$/\1/;x;G;s/\n/ /'
  2. We ChinaUnix
复制代码


分解日期串
  1. echo 20030922|sed 's/\(....\)\(..\)\(..\)/\1 \2 \3/'|read year month day
  2. echo $year $month $day
复制代码


文件内容倒序输出
  1. sed '1!G;h;$!d'  oldfile >newfile
复制代码

论坛徽章:
0
发表于 2003-10-28 21:57 |显示全部楼层

我常用的正则表达式

收藏..............



俺就是对表达式有点晕,总是搞不清楚.........

论坛徽章:
0
发表于 2003-10-28 22:08 |显示全部楼层

我常用的正则表达式

学习~~~

论坛徽章:
0
发表于 2003-10-29 07:45 |显示全部楼层

我常用的正则表达式

有用,斑竹不介意的话俺抄走了

论坛徽章:
0
发表于 2003-10-29 08:10 |显示全部楼层

我常用的正则表达式

ha !一大早就被这么好的东东撞了个大跟头,高兴呀。
正则表达式,有时说不清楚,但确实挺有意思的。谢谢斑竹了。

论坛徽章:
0
发表于 2003-10-29 08:45 |显示全部楼层

我常用的正则表达式

最喜欢有人做总结归纳了

谢谢!

论坛徽章:
0
发表于 2003-10-29 09:53 |显示全部楼层

我常用的正则表达式

太好了~~ admirer就是活雷锋~~ 哈~ :)

     既然提出来了,大家都把自己经常用的或者需要用的正则表达式
     列出来啊~!!

      偶狗尾续貂来一个:

      科学表达式:  [+-]?([0-9]+[.]?[0-9]*|[.][0-9]+)([eE][+-]?[0-9]+)? $

      2.9e-15
      100e+3
      0.23E19

论坛徽章:
0
发表于 2003-10-29 10:06 |显示全部楼层

我常用的正则表达式

还有啊,怎么匹配字节数?
  比如  234,000
          12,323K
           200M
           ..........

论坛徽章:
0
发表于 2003-10-29 10:56 |显示全部楼层

我常用的正则表达式

例如:要从下列代码中去除"[]"及其中包括的代码
代码:
一. 替换
sed 's/\[[^]]\{1,\}\]//g' filename


  如果出现[] 的匹配,将[]换成{},如果不是[]的匹配,不改变[符号,但保留其中的内容怎么做?
  
  例如 :
           
           hello world ]
       变成:
           {b:4c6c2a6554}{color=red:4c6c2a6554}
            hello world ]
           

                               
                               

论坛徽章:
1
数据库技术版块每日发帖之星
日期:2016-01-24 06:20:00
发表于 2003-10-29 11:08 |显示全部楼层

我常用的正则表达式

to 楼上..
  1. sed s'/\[\([^]]*\)\]/{\1}/'g filename
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP