84669 人学习
152542 人学习
20005 人学习
5487 人学习
7821 人学习
359900 人学习
3350 人学习
180660 人学习
48569 人学习
18603 人学习
40936 人学习
1549 人学习
1183 人学习
32909 人学习
简单地使用/(#{1,6}) *(S+) *(?:r|n)*/确实能匹配出Markdown中的H1~H6标题,但是也把引用和代码块中的#(比如注释)匹配到了,如:
/(#{1,6}) *(S+) *(?:r|n)*/
一段文字 使用> 的注释
一段文字
或者
# 使用四个空格缩进的注释
# 使用`的注释
// code... # 代码注释 # 使用"的注释
怎样排除这些不需要匹配的情况?
就你的问题而言。/^#/似乎就能满足需求,但是架不住php、bash之类以#为注释的语言。
/^#/
所以如果想要做得足够精准,就需要把md分块解析。
我觉得你的问题是注释的代码块和标题的规则是一样的,怎么进行区分。
两种方式区分
标题换个规则
代码块放在固定的标签里
就你的问题而言。
/^#/
似乎就能满足需求,但是架不住php、bash之类以#为注释的语言。所以如果想要做得足够精准,就需要把md分块解析。
我觉得你的问题是注释的代码块和标题的规则是一样的,怎么进行区分。
两种方式区分
标题换个规则
代码块放在固定的标签里