2016-08-27 4 views
1

정규 표현식을 사용하여 대체하고 싶지 않은 데이터를 제외한 모든 것을 찾으려고합니다. 그런 다음 발견 된 표현식을 제외한 모든 것을 바꾸려고합니다.일반 표현식은 캡처 된 표현식을 제외한 모든 것을 대체합니다.

"CN ="으로 시작하고 12 자로 끝나는 단어를 모두 찾습니다. 현재 논리 (!? CN =) \ w {12}을 (를) 사용하고 있습니다. 문자열에서 두 번 발생합니다. 그러나, 나는이 두 사건을 제외한 모든 것을 찾아 내고 그 밖의 모든 것을 찾고 빈 값으로 모든 것을 바꿔 단지 두 개의 CN = word 값을 갖기를 원합니다.

첨부 된 이미지는 나의 테스트 및 결과를 보여줍니다. 나는 역효과를 원하고있다.

image

감사합니다, 프레드

당신은 경기 전에 오는 무엇이든 캡처하고 CN=\w{12}에 대한 대안으로 (끝 입력) $을 추가 .*를 사용할 수
+1

스택 오버플로에 오신 것을 환영합니다. 질문을 편집하여 샘플 데이터, 일치하려는 항목 및 샘플 출력을 표시하십시오. –

+0

모든 일치 항목을 연결하기 만하면됩니다. – Barmar

+0

공유 버튼을 사용하여 해당 정규식 테스트에 대한 링크를 얻을 수 있습니다. 그것은 이미지보다 훨씬 유용합니다. – trincot

답변

2

:

.*?($|CN=\w{12}) 

캡처 된 그룹으로 바꾸기 :

$1 
01 Java regex tester

NB에 23,516,

데모 : 당신이 을 쓴 나는 !?를 추가하지 않은 ... "CN ="로 시작하는 단어. CN= 앞에 감탄 부호를 붙이려면, 정규식에 느낌표를 추가해야합니다.

+0

이 답변이 귀하의 필요에 맞습니까? 수락하거나 댓글을 남길 수 있습니까? – trincot

관련 문제