2017-10-20 4 views
0

私は内部と外部の両方を含むMarkdownファイルを含むプロジェクトを持っています(httpで始まります)。これらの内部リンクのいくつかは.mdファイル拡張子を持たないため、Jekyllの外部でレンダリングされたときには機能しません。.md拡張子なしの内部Markdownリンクにのみ一致する正規表現

例:私はこれらの3例最初に一致する正規表現を探しています

[link text 1](internal-link) 
[link text 2](internal-link-2.md) 
[link text 3](http://external-link...) 

から.mdファイル拡張子なし内部リンク。精錬後

答えて

1

が、これは次のようになります。

\[[^]]+\]\((?!http:)(?!.+\.md).+\) 

https://regex101.com/r/0uW1cl/5

残念なだけ誤って動作しますが、私は同様で遊んことと同様に

+0

(再びキャプチャグループを削除します)。 http://regexr.com/3h0lqどういうわけか、最後の文字 '.' - を除いて、何も除外しますが、' http'は始まりません。 – janpio

+0

これは、あなたの提案された正規表現で何が起きているかを示していますキャプチャグループ):https://regex101.com/r/0uW1cl/3個々の文字は除きます。 (しかし、とにかく深刻な答えに感謝!) – janpio

+0

あなたはキャプチャグループを再度追加する必要がありますが、 –

関連する問題