c# regex - 组和嵌套组

标签 c# regex

该结构是一个播放列表列表。播放列表包括:
- 静态文本和日期;
- 1-n 条轨道,由索引、作者、标题组成

STATICTEXT 2011-06-18      
---------------------
01. author - title
02. author - title

STATICTEXT 2011-06-19
---------------------
01. author - title
02. author - title
03. author - title
04. author - title

我想捕获一个播放列表列表。在播放列表 block 内,我想捕获其他信息,例如作者和标题。 对我来说,这是嵌套组的一个例子:每个播放列表是一个包含 2 个嵌套组(作者、标题)的组。

我怎样才能做到这一点?

提前致谢。

R.

最佳答案

正则表达式在某些方面表现出色,但并非在所有方面都出色。为该文件编写解析器简单直接。

playlists = new List()
for line in file
  if line is blank
    continue
  if line starts with "STATICTEXT"
    playslists.add(playlist)
    playlist = new Playlist()
  song = parse song //this is something that regex does good
  playlist.add(song)

关于c# regex - 组和嵌套组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6402708/

相关文章:

C# 性能好奇心

c# - 如果我有一个返回 AsEnumerable 的函数,它会缓存所有结果吗?

c# - Rx .NET - 强制缓冲区发出

python - 排除匹配的字符串 python re.findall

regex - 正则表达式 anchor list

regex - 在 Regexp::Grammars 模块中处理空格

javascript - 如何检查是否包含任何字符串顺序的所有关键字?正则表达式 Javascript

c# - 加快迭代两个 foreach 循环

c#如何判断两个对象是否相等

java - 如何使用正则表达式检测所有冗余类型(菱形运算符)?