我可能在挑战正则表达式的极限,但谁知道呢...
我正在使用php进行工作。
就像这样:
preg_replace('/(?:\n|^)(={3,6})([^=]+)(\1)/','<h#>$2</h#>', $input);
有没有办法找出有多少个'=' (={3,6})
被匹配,这样我就可以在'#'处进行反向引用?
实际上变成:
===Heading 3=== into <h3>Heading 3</h3>
====Heading 4==== into <h4>Heading 4</h4>
...
(?:\n|^)
替换为(?m)^
(即打开多行模式,使^
成为 行首 锚点而不是 字符串开头)。 - Alan Moore