我有以下文件:
#EXTM3U
#EXTINF:36,Armand van Helden Featuring La Rok - Let Me Lead You
C:\Users\Public\Music\Sample Music\Armand van Helden Featuring La Rok - Let Me Lead You.mp3
#EXTINF:19,Ann Nesby - Loving is Really My Game
C:\Users\Public\Music\Sample Music\Ann Nesby - Loving is Really My Game.mp3
#EXTINF:19,Thomas Toccafondi feat. Kaysee - I've Changed (Earnshaw & Jones Remix)
C:\Users\Public\Music\Sample Music\Thomas_Toccafondi_feat._Kaysee-I've_Changed_(Earnshaw_&_Jones_Remix)-DUFF028-1(320k).mp3
#EXTINF:57,Terry Hunter feat. Terisa Griffin - Wonderful (Abicah Soul's Wonderful Remix)
C:\Users\Public\Music\Sample Music\Terry_Hunter_feat._Terisa_Griffin-Wonderful_(Abicah_Soul's_Wonderful_Remix)-TB005-1(320k).mp3
我正在尝试编写一个正则表达式,将艺术家和标题分解为两个独立的组,以便第一组包含艺术家:
Armand van Helden Featuring La Rok
Ann Nesby
Thomas Toccafondi feat. Kaysee
Terry Hunter feat. Terisa Griffin
第二组将包含标题:
Let Me Lead You
Loving is Really My Game
I've Changed (Earnshaw & Jones Remix)
Wonderful (Abicah Soul's Wonderful Remix)
解析后的信息应该来自#EXTINF之后的部分:后跟任何数字。我想忽略实际的文件名。
感谢任何帮助。
由于
答案 0 :(得分:1)
/^#EXTINF:\d+,(.*?) - (.*)/
艺术家在第1组
标题属于第2组
答案 1 :(得分:0)
如果所有曲目都具有相同的格式(#,艺术家 - 曲目),那么我会使用查找' - '在每一行中,都要把它作为#,艺术家和之后的任何东西作为轨道。它只是一个简单的 - 。然后你可以对它进行一些处理以将其拆分。对于艺术家,您可以使用前瞻/后视或仅使用[0-9] +,然后抓住其余部分。
希望有所帮助!
答案 2 :(得分:0)
艺术家:
/^#EXTINF:\d+,([^-]+) - /
标题
/^#EXTINF:\d+,[^-]+ - (.+)/