나는 Go regex syntax과 작동하지 않는 많은 유사한 questions을 발견했습니다.Go.Regexp를 사용하여 상수 문자열을 제외한 모든 것을 일치시키는 방법이 있습니까?
일치시키려는 문자열의 길이는 anything/anything/somestring
입니다. \/.*\/.*\/(.*)
패턴을 사용하면 somestring
과 일치하지만 somestring
이 포함 된 문자열을 제외하고는 어떤 것도 일치 시키려고합니다.
대부분의 답변은 \/.*\/.*\/((?!somestring).*)
과 같은 것을 사용하지만, golang regexp에서 나는 ? The preceding token is not quantifiable
을 얻습니다.
/test/test/MATCH
은 /test/test/somestring
은 일치하지 않습니다. 이것은 (제한된) Go 정규식 구문을 사용하여 가능합니까? O (N)에 진정한 정규 표현식 according to Russ Cox의 제약 조건을 만족하는 시간을 구현할 수있는 방법이 없기 때문에
참조하십시오. 그것은 정말로 정규식 엔진입니까? 어쨌든, 어설 션을 사용할 수 없으므로 (필요한 경우)'(?! somestring)'이 나옵니다. 그 주위의 유일한 방법은 정규식'\ /.* \ /.* \/(. *)'을 while 회 돌이로 사용하는 것입니다. 각 일치 문자열은 그룹 1과'somestring'을 비교합니다. – sln
RE2 (Go 구현)는 둘러보기를 지원하지 않습니다. 자막을 직접 확인하십시오. – JimB