2017-10-20 2 views
0

내부 및 외부 (http으로 시작) 링크가 포함 된 Markdown 파일이 많은 프로젝트가 있습니다. 이러한 내부 링크 중 일부는 .md 파일 확장자가 없으므로 지킬 외부에서 렌더링 될 때 작동하지 않습니다..md 확장자가없는 내부 Markdown 링크에만 일치하는 정규 표현식

예 : 만이 세 사건의 처음과 일치하는 정규 표현식을 찾고

[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

캡쳐 그룹을 다시 추가해야합니다. –

관련 문제