내 상황에 맞는 정규식을 찾을 수 없습니다. 이중 대괄호 사이의 모든 텍스트를 가져와야 하지만 하이픈 사이는 아닙니다. 예:
[[abc]] would get abc
[[-abc]] would get -abc
[[abc-]] would get abc-
[[-abc-]] would get nothing
나는 내가 원하는 것을 거의 얻을 수 있었다:
\[\[(\-(.*?)\-)\]\]
그러나 이 표현식은 이중 대괄호 사이에 있는 텍스트를 반환하며 이는 하이픈 사이에도 있습니다(하이픈 사이에 있으면 안 됨).
어떤 도움을 주시겠습니까?
이 패턴은 저에게 효과적입니다.
(?!\[{2}\-[^(\-|\s)]*\-\]{2})\[{2}([^(?:\]{2})]*)\]{2}
원하지 않는 패턴 ( [[-foobar-]]
)을 일치시키는 것은 매우 쉽기 때문에 이 솔루션은 부정 미리보기를 사용하여 다음 항목이 해당 패턴과 일치 하지 않는지 확인한 다음 이중 괄호 사이의 모든 항목을 캡처 그룹으로 가져 옵니다 .
여기에서 테스트하십시오: https://regex101.com/r/pxbwKo/2
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다