【发布时间】:2013-12-17 11:53:43
【问题描述】:
什么是匹配前一行以一组字符开头的行的正则表达式?
我正在尝试解析M3U files,我需要匹配前一行以#EXTINF:开头的行所以如果我们举这个例子:
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:10
#EXTINF:11.54
ASMIK_tid_0000250058_m.600000-00000.ts
#EXTINF:8.51
ASMIK_tid_0000250058_m.600000-00001.ts
#EXTINF:11.76
ASMIK_tid_0000250058_m.600000-00002.ts
#EXTINF:10.05
ASMIK_tid_0000250058_m.600000-00003.ts
etc...
我只想提取这些行:
ASMIK_tid_0000250058_m.600000-00000.ts
ASMIK_tid_0000250058_m.600000-00001.ts
ASMIK_tid_0000250058_m.600000-00002.ts
ASMIK_tid_0000250058_m.600000-00003.ts
我尝试了this answer 的变体和这个:(?#EXT.*\n) 但没有运气...
【问题讨论】:
-
您能发布您尝试过的最成功的变体吗?另外,你要找的那些行会不会是那些不以
#开头的行? -
我在正则表达式中添加了我的最佳尝试。
-
我很难过。您认为您可以在 ideone(我之前链接的站点)上放一些东西并将链接放入代码示例吗?使用交互式代码进行调试会更容易,而且我不必等待您检查某些东西是否有效。希望该站点具有运行正则表达式所需的库。
-
ideone 没有 Cocoa API,
NSRegularExpression是其中的一部分。我尝试使用this,但我遇到了同样的问题......无论如何,你的正则表达式确实有效,所以在这个阶段这是一个 obj-c 问题,我将在其他地方解决。谢谢!
标签: objective-c regex m3u8