正则表达式匹配哈希标记,多行(PHP)
我正在尝试制作一个wiki标记样式解析器,其中包含由标签定义的标头。 例如:
# Heading 1
Some information here below the heading
Another paragraph of information
## Subheading 1
Paragraph related to the subheading
我想要做的是捕获一个哈希标签和另一个哈希标签之间的所有内容(以及哈希标签本身)
所以在上面,我想要捕捉
Heading 1 (and #)
Some information here below the heading
Another paragraph of information
和...
Subheading 1 (and ##)
Paragraph related to the subheading
到目前为止,我有/(#+) ?(.+)/
和完全适用于哈希标签后,在同一行的内容,而不是通过换行分隔的任何文本。
但是,我似乎无法在正则表达式模式的(.+)
部分中匹配和换行符,也没有吞噬所有以哈希标记开头的新行。
我相信这很简单。
你可以使用这个基于否定的正则表达式:
# *([^#]+)
RegEx演示
码:
if ( preg_match_all('/# *([^#]+)/', $input, $matches) )
print_r($matches[1]);
链接地址: http://www.djcxy.com/p/29881.html
上一篇: Regex to match everything between hash tags, multiline (PHP)
下一篇: PHP regex find BBCode that is not surrounded by another BBCode