C# 정규식으로 파이썬 주석 처리하기

추헌오@Google의 이미지

제가 지금 c# 으로 파이썬 에디터를 만들고 있는데 파이썬 파일 안에 주석들의 색상을 초록색으로 하려고 합니다.

@"#.*$" 을 이용하면 '#' 으로 된 주석을 찾아 색상 변경이 가능합니다.
그러나 문제는 """ 을 이용한 주석을 찾아 색상을 변경하려 하는데 도무지 방법을 모르겠습니다.

("""|''')[\s\S]*?\1 이러한 정규식을 사용해서 regex 101 이라는 정규식 테스트 사이트에선 잘 작동하는 것이
c# 에서는 싱글라인은 되는데 멀티 라인은 안되더라구요.
regex 101 사이트 : https://regex101.com/r/6HdVq7/1

어떻게 하면 좋을까요

jachin의 이미지

https://stackoverflow.com/questions/1780009/multiline-regular-expression-in-c-sharp

위의 링크의 내용대로 RegexOptions.Singleline은 매칭할 대상을 하나의 문자열로 처리한다는 옵션입니다. Regex 객체를 할당할 때, 패턴과 함께 설정하시면 되겠습니다.

추헌오@Google의 이미지

답변 감사드립니다. 근데 제가 저기서 말한 싱글라인과 멀티라인은 RegexOptions.Singleline, RegexOptions.Mulitline 이 아니라 주석에서
""" comment comment """ 와 같은 싱글라인과
""" comment
comment
comment
""" 와 같은 멀티 라인을 말한 것입니다

추헌오@Google의 이미지

https://regex101.com/r/6HdVq7/3 여기 사이트에서 테스트 했을때 원하는대로 잘 되나
실제로 c#에서 RegexOptions.Singleline 을 적용해도 싱글라인 """ comment comment """ 는 되는데
멀티라인
""" comment
comment
""" 는 되지 않습니다. 좋은 방법 없을까요? ㅠ

jachin의 이미지

[\s\S]* 대신에 .* 으로 바꾸면 어떨까요?