Go를 사용하여 regexp.Regexp
와 패턴을 일치시키는 방법을 찾으려고 합니다.
대회 기준은 다음과 같습니다.
FooBar
或其子字符串 Foo
와 일치해야 합니다. 그렇지 않으면 전혀 일치하지 않습니다. S+
)따라서 다음과 같이 일치해야 합니다.
FooABC
FooBarABC
FooBar
(뒤에 다른 문자가 없기 때문에) ABC
(因为它不是以 Foo
)다양한 표현을 시도해 보았으나 이해가 안되는 것 같습니다.
다른 구현에는 부정적인 예측 모드가 존재하는 것을 발견했지만 Go에서는 이를 제공하지 않는 것 같습니다. 이 문제를 해결할 다른 방법이 있나요?
참조(업데이트됨): https://regex101.com/r/SWSTzv/3
이 문제는 regexp
를 사용하지 않고도 분명히 해결될 수 있다는 것을 알고 있습니다. 그러나 이 요청의 목적은 Go의 stdlib 구현으로 이 문제가 해결될 수 있는지 이해하는 것입니다. regexp
的情况下解决。然而,这个请求的目的是了解这个问题是否可以通过 Go 的 stdlib 实现来解决。
为什么不直接反转与正则表达式 ^Foo(?:Bar)?$
^Foo(?:Bar)?$
와 일치하는 결과를 그냥 반전시키면 어떨까요(글쎄요, )? 으아악 출력: 으아악
rextester에서 사용해 보세요.
업데이트 em>
정규 표현식을 기반으로 하고
.을 사용하여 하나 더 으아악
🎜rextester🎜에서 사용해 보세요. 🎜위 내용은 Go Regexp: 전체 단어 또는 하위 문자열과 일치하거나 전혀 일치하지 않음의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!