我試圖總結每個以「##」與標籤開頭行開始行。嘗試爲文本格式實現類似GitHub/Stackoverflow的語法。PHP的preg_replace,每個包裹與
這是我得到:
$value = preg_replace('/^## (.*)$/m', '<p>$1</p>', $value);
谷歌上搜索了好一陣子後,這似乎是正確的解決方案,但是它並沒有預期的工作還是我只是不明白的東西...
實施例文本:
## Some header 1
Some text that doesn't need to be altered
## Some header 2
而這是結果:
<p>Some header 1
</p>
Some text that doesn't need to be altered
<p>Some header 2</p>
正如你所看到的,因爲它是在文本結尾第二頭得到處理罰款。但是,第一個標題會在結束標記之前的末尾添加一個額外的新行。我該如何擺脫?
通過github上使用的語法是降價。我建議你使用像https://github.com/erusev/parsedown這樣的現有庫來解析你的文本 – Fabien
沒有在你的代碼中發現任何問題,看看https:// 3v4l。org/I8ICB –
這很有趣。試試''/(* ANYCRLF)^ ##(。*)$/m'' –