python regex搜索在查找时停止\n

2024-05-19 10:52:38 发布

您现在位置:Python中文网/ 问答频道 /正文

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

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

我只需要提取视频的id tZ5xaRLhljc 我怎么能做到?你知道吗


Tags: toreidaddedoutputsearchvideogroup
2条回答

试试这个:

re.search("Video ID: (.+)\n", output).group(1)

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

re.search(r"Video ID: (\w+)", output).group(1)

其中\w匹配所有“word”字符(即非空格)。你知道吗

相关问题 更多 >

    热门问题