首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >python正则表达式搜索在查找\n字符时停止

python正则表达式搜索在查找\n字符时停止
EN

Stack Overflow用户
提问于 2018-08-21 21:09:58
回答 2查看 227关注 0票数 2

我需要从json字符串中抓取数据,我当前的代码是:

代码语言:javascript
复制
import re
>>> output = """
... Uploading file 'ex4-to-mq4-ps-decompiler.mp4'...
... Progress:    13.29 Mbps, 3703728 / 3703084 (100.017%) ETA       0s
... Upload successful! Video ID: tZ5xaRLhljc
... Video added to playlist 'decompile mql4' (PL2Q1nwGTMjdeAsBn6mcQ7KuFo6K7_g8_L)
... Video added to playlist 'decompile ex4' (PL2Q1nwGTMjdffMBkc6L4r6SeXnjz7eUiP)
... """
re.search("Video ID: (.+)", output, re.S).group(1)

>>> re.search("Video ID: (.+)?", output, re.S).group(1)
"tZ5xaRLhljc\nVideo added to playlist 'decompile mql4' (PL2Q1nwGTMjdeAsBn6mcQ7KuFo6K7_g8_L)\nVideo added to playlist 'decompile ex4' (PL2

我只需要提取视频tZ5xaRLhljc的id,我可以这样做吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-08-21 21:13:55

re.Sre.DOTALL,它使.匹配换行符\n字符。如果将其删除,.将不再匹配换行符,您的代码将正常工作。也许是一个更安全的解决方案

代码语言:javascript
复制
re.search(r"Video ID: (\w+)", output).group(1)

其中\w匹配所有"word“字符(即非空格)。

票数 3
EN

Stack Overflow用户

发布于 2018-08-21 21:14:27

试试这个:

代码语言:javascript
复制
re.search("Video ID: (.+)\n", output).group(1)
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51949457

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档