Spirit Parser 프레임 워크를 사용하여 처리됩니다
-
06-09-2019 - |
문제
Spirit Parser를 사용하여 다음과 유사한 문자열을 구문 분석하려고합니다.
<junk> -somearg#this is a string with a literal ## in it# <junk>
내가 찾고있는 것은 # 마크 내부의 부분을 추출 할 수있는 문법이지만 중간에서 이중 ##을 건너 뛰는 것이 현명합니다. 이는 리터럴 #을 의미하는 탈출입니다.
이것이 내가 염두에 두었던 것입니다.
confix_p(L'#', *anychar_p, L'#' >> ~ch_p(L'#'))
그러나 이것은 반환됩니다 :
#this is a string with a literal ##
나는 그것을 건너 뛰고 싶다 ##
캐릭터 .... 이것이 가능합니까?
빌리 3
해결책
나는 Kleene 스타를 The Inclix Parser에 추가하여 이것을 해결했습니다. 어쨌든 감사합니다!
*confix_p(L'#', *anychar_p, L'#' >> ~ch_p(L'#'))
예상대로 작동합니다.
제휴하지 않습니다 StackOverflow