正则表达式匹配两个表达式之间的行

时间:2011-07-16 12:34:07

标签: iphone objective-c xcode

我正在对一些数据进行排序,并希望在两位有用信息之间“切掉”一些垃圾。 例如:

Useful one


rubbish
rubbish //rubbish here is covered by [.*], but the number of lines can be any number 1 or above
rubbish


useful two

我已经成功匹配了我的信息的有用部分,我只需要知道如何匹配垃圾的东西。模式如下:有用,新行(无内容),新行(无内容),垃圾,新行(无内容),新行(无内容),有用。 其中最重要的部分是垃圾部分的线数可能不同,但总是至少有一条线。我不确定我是否很好地描述了这一点,感谢任何帮助。

3 个答案:

答案 0 :(得分:0)

我知道这样做的最好方法就是这样做 (EXP1)(。+?)(EXP2)

并在代码中替换或使用两组

$ 1 $ 3

其中$ x是团体占位符

评论我更具体的语法

答案 1 :(得分:0)

你的正则表达式(rubbish\s+)(rubbish\s+)(rubbish)

答案 2 :(得分:0)

尝试像(useful\n\n\n(.*)\n\n\nuseful\n)+这样的模式,将垃圾捕获到括号中。改进和应用此模式取决于您的需求和代码。