Markdown 이 줄 지향, 부분적 정규식 친화
Markdown 의 inline 패턴 (**bold**, *italic*, `code`, [link](url)) 가 정규식과 잘 매칭. 블록 패턴 (리스트, blockquote, code fence) 가 줄별 state. 진짜 Markdown 파서가 다 정확 처리.
Bold 와 italic
Bold: \*\*([^*]+)\*\*
Italic: \*([^*]+)\*
순서 주의 — bold 먼저 처리하면 italic 패턴이 우연히 ** 소비 X.
Inline 코드
`([^`]+)`
비-backtick 콘텐츠 둘러싼 backtick. Backtick 포함 코드는 진짜 Markdown 이 double backtick (``code with `backticks` inside``) 사용 — 필요시 처리.
링크
\[([^\]]+)\]\(([^)]+)\)
그룹 1 에 링크 텍스트, 그룹 2 에 URL. 중첩 대괄호 또는 이미지 () 처리 X — 시작에 !? 추가하면 됨.
Heading
줄 anchor: ^(#{1,6})\s+(.+?)\s*$ + MULTILINE. 그룹 1 에 레벨 (# 개수), 그룹 2 에 텍스트.
옳은 도구: 진짜 파서
Markdown 을 HTML 로 변환, 중첩 리스트 처리, 또는 ad-hoc 재작성 넘는 뭐든: 진짜 파서. Python markdown 또는 mistune, JS marked, Rust pulldown-cmark. 정규식이 spot 수정과 가벼운 변환용.