免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3727 | 回复: 3
打印 上一主题 下一主题

[函数] re:replace 替换dot [复制链接]

论坛徽章:
27
水瓶座
日期:2014-08-22 21:06:34程序设计版块每日发帖之星
日期:2015-11-25 06:20:0015-16赛季CBA联赛之新疆
日期:2015-12-19 19:05:48IT运维版块每日发帖之星
日期:2015-12-25 06:20:31IT运维版块每日发帖之星
日期:2015-12-25 06:20:31IT运维版块每日发帖之星
日期:2015-12-25 06:20:3315-16赛季CBA联赛之上海
日期:2016-04-15 19:51:31程序设计版块每日发帖之星
日期:2016-04-17 06:23:29程序设计版块每日发帖之星
日期:2016-04-23 06:20:00程序设计版块每日发帖之星
日期:2016-05-26 06:20:00每日论坛发贴之星
日期:2016-05-26 06:20:0015-16赛季CBA联赛之辽宁
日期:2017-02-16 23:59:47
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2014-10-26 23:48 |只看该作者 |倒序浏览
本帖最后由 shijiang1130 于 2014-10-26 23:49 编辑

9> re:replace("1.3.6.1.4.1.9.9.543",".","\,",[global,{return,list}]).
",,,,,,,,,,,,,,,,,,,"
10> re:replace("1.3.6.1.4.1.9.9.543","\.","\\,",[global,{return,list}]).
",,,,,,,,,,,,,,,,,,,"
11> re:replace("1.3.6.1.4.1.9.9.543","\\.","\\,",[global,{return,list}]).
"1,3,6,1,4,1,9,9,543"

12> re:replace("1.3.6.1.4.1.9.9.543",".",",",[global,{return,list}]).   
",,,,,,,,,,,,,,,,,,,"
13> re:replace("1.3.6.1.4.1.9.9.543","\.","\,",[global,{return,list}]).
",,,,,,,,,,,,,,,,,,,"
14>

论坛徽章:
27
水瓶座
日期:2014-08-22 21:06:34程序设计版块每日发帖之星
日期:2015-11-25 06:20:0015-16赛季CBA联赛之新疆
日期:2015-12-19 19:05:48IT运维版块每日发帖之星
日期:2015-12-25 06:20:31IT运维版块每日发帖之星
日期:2015-12-25 06:20:31IT运维版块每日发帖之星
日期:2015-12-25 06:20:3315-16赛季CBA联赛之上海
日期:2016-04-15 19:51:31程序设计版块每日发帖之星
日期:2016-04-17 06:23:29程序设计版块每日发帖之星
日期:2016-04-23 06:20:00程序设计版块每日发帖之星
日期:2016-05-26 06:20:00每日论坛发贴之星
日期:2016-05-26 06:20:0015-16赛季CBA联赛之辽宁
日期:2017-02-16 23:59:47
2 [报告]
发表于 2014-12-26 23:23 |只看该作者
  1. {match,Ip}=re:run(Body,"alert\">(.*)</tbody>",[{capture,[1],list},global,dotall,ungreedy]),
复制代码

论坛徽章:
0
3 [报告]
发表于 2015-05-29 13:55 |只看该作者
re:run 能详解一下吗。。。。。

论坛徽章:
0
4 [报告]
发表于 2015-05-29 14:07 |只看该作者
re:run/3

根据正则表达式去匹配数据并返回匹配结果

用法:
1
       
run( Subject , RE , Options ) -> {match, Captured } | match | nomatch

执行一个正则匹配,匹配成功则返回 {match, Captured},否则返回一个 nomatch 的原子。参数 RE 可以是正则字符串,也可以是用 re:compile/1 或 re:compile/2 预编译过的正则匹配指令。参数 Options 是一个匹配选项参数。

如果编译正则表达式时发生了异常错误,只会返回一个 badarg 的提示,错误的详细定位信息可以通过 re:compile/2 方法来查看

缺省第三个参数的情况下,返回的 Captured 值会包含匹配结果的开始的位置和匹配结果的长度,例如下面返回的是 [{2,1}],表示匹配结果在第 2 个字符后出现,匹配结果值的长度是 1。
1
       
re:run ( "just a test!" , "s" ).
{match,[{2,1}]}

添加一个 global 参数,把所有匹配结果的匹配出来
1
       
re:run ( "just a test!" , "s" , [global]).
{match,[[{2,1}],[{9,1}]]}

把第一个匹配结果以字符串的形式截取下来
1
       
re:run ( "just a test!" , "s" , [{capture, first, list}]).
{match,["s"]}

把所有结果截取下来,并以字符串的形式返回
1
       
re:run ( "just a test!" , "s" , [global, {capture, all, list}]).
{match,[["s"],["s"]]}

字符串里是否存在某个字符:
1
       
re:run ( "abc'defg" , "j|k|'|m" , [{capture, none}]).
match

一些常用例子:

匹配 IP:
1
       
re:run ( "HostName                    107.170.96.117" , "(\\d{1,3}){3} \\. \\d{1,3}" , [{capture, first, list}]).
{match,["107.170.96.117"]}
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP