如何替换分隔符之间的所有字符

How do I substitute all characters between a delimiter

抱歉,如果标题不是很清楚。

嗨,我有一个包含在 ---- 个字符之间的 multi-line 字符串,如下所示:

----
line-1
line-2
line-3
line-4
----

现在我需要捕获这些 ---- 个字符之间的文本。

我目前正在使用以下正则表达式:/^----$\n([^-]+)\n^----$/m,然后我使用 </code> 代码获取 back-reference 中的文本。问题是 <code>[^-] 不允许在我的字符串中使用破折号。如果我删除 [^-],那么最后的 ---- 会被捕获组捕获。

我该如何解决这个问题?

你可以试试这个正则表达式:

/^----\n([\s\S]*)\n----$/

[\s\S] 匹配任何字符,包括换行符。

RegEx Demo