Python正则表达式怎么提取出列表
天蓬老师
天蓬老师 2017-04-17 15:59:49
[Python讨论组]
<tr class="ListTableRowEx"  id="Row1"
onclick="javascript:setRowFocus(this,false,1);FirstDataFormat('0000008746')"
ondblclick="viewcoinfo('interunit','0000008746','{CF69D904-F2B3-44CB-9554-B5E27BD76DD4}')"
title="双击查看详情" >

想要用re.findall提取出interunit,0000008746,{CF69D904-F2B3-44CB-9554-B5E27BD76DD4}应该怎么写呢?

天蓬老师
天蓬老师

欢迎选择我的课程,让我们一起见证您的进步~~

全部回复(5)
大家讲道理

再去复习一下正则的基本知识吧。 这次匹配这个格式里的字符,下次换别的又蒙圈了,还得再来求一个正则。。。

高洛峰
import re
 
s = "<tr ondblclick=\"viewcoinfo('interunit','0000008746','{CF69D904-F2B3-44CB-9554-B5E27BD76DD4}')\">"
m = re.search(r'viewcoinfo\(\'(\w+)\',\'(\w+)\',\'(\{\w+-\w+-\w+-\w+-\w+\})\'\)', s)
print(m.group(1))
print(m.group(2))
print(m.group(3))



interunit
0000008746
{CF69D904-F2B3-44CB-9554-B5E27BD76DD4}

ps:   我的是Python 3.5.0,而且我对Python一点都不熟悉,重点是这个正则表达式吧!:D
怪我咯
PATTERN = "ondblclick=\"viewcoinfo(.*)$"
result = re.findall(PATTERN, s, re.MULTILINE|re.IGNORECASE)
if result:
    print result[0]
阿神

既然LZ想要用re.findall()来实现的话,findall()会返回一个list。匹配出来之后直接取list的后三个就可以了

天蓬老师

推荐你去看下这篇关于正则表达式的文章Link

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号