在第一行分成两个不同的组

时间:2018-02-02 06:09:45

标签: regex

我有一个简单的正则表达式任务,但似乎无法弄清楚确切的语法。

我想采用多行字符串(Markdown文档)并将第一行(标题)分组为一组,然后将第二组中的所有后续行分组。

Visio 2013

我尝试的所有东西似乎要么选择第一组中的所有内容(# Title // ] Group 1: Title // \ Some text. // | // | Group 2: Content # A heading // | More text. // / ),要么将第2组拆分成一堆不同大小的组。

我正在Expressions进行测试,最终在JavaScript脚本和Workflow's匹配文字操作中实施。

我还在学习正则表达式,但是当我弄清楚其他更复杂的任务时,这个人正在暗示我。

谢谢!

2 个答案:

答案 0 :(得分:2)

这将选择并捕获第1组中的第1行和第2组中的其余行:

^(.*)\n([\s\S]*)

Click for Demo

<强>解释

  • ^ - 断言字符串的开头
  • (.*) - 匹配除换行符之外的任何字符的0次出现并将其存储在第1组中
  • \n - 匹配换行符
  • ([\s\S]*) - 匹配包括换行符在内的所有剩余字符并将其存储在第2组

答案 1 :(得分:1)

使用不情愿的量词作为标题:

(?s)(.*?)\n(.*)

甚至更简单,在标题后移动DOTALL标志(?s)

(.*)\n(?s)(.*)