이 정규식에는 몇 가지 문제점이 있습니다.Spinning regex에 약간의 버그가 있습니다.
/\(\((((?>[^\(\(\)\)]+)|(?R))*)\)\)/x
텍스트를 "스핀"하기 위해 사용됩니다. 우리가 "((우리는 (사랑 | like))이 셔츠 (size xl))")와 같은 문장을 가지고있을 때, 그는이 권리를 실행할 수 없다. 마지막 세 괄호 중 첫 번째 괄호가 텍스트 자체에 속하기 때문에 문장 끝에 세 개의 괄호가 있기 때문입니다.
작동 방법 : 처음에 3 개 이상이면 정규식에서 괄호를 처음으로 가져와야하며 마지막에 3 개 이상 괄호가있는 경우 마지막 2 개를 종료해야합니다. 가능한가요 ???
이제 다단계에서 매우 잘 작동하므로 "((this ((shirt | sweater)))))"와 같은 것은 "잘 작동합니다 (끝에 4 개의 괄호를 참조하십시오). 따라서 텍스트에 포함 된 괄호가 회전 괄호 바로 뒤에서 시작하거나 끝 괄호 바로 앞에서 끝나는 경우에만 잘못됩니다.
당신은 내 영웅입니다! 마지막 정규 표현식 ('\ (\ ((?) [^()] | ((R)) | (\ ((?) [^()] | \) \)'), sharm처럼 작동합니다 !!!! –
@ErikVandeVen 방금 도움을 주려고했습니다 ^^; 나는 그것이 당신을 위해 일해서 다행이다. :) – Jerry