2010-03-29 2 views
0

저는 Regex의 작동 방식을 이해하는 데 상당히 익숙하지만, 실망 스럽습니다.Regex/Eclipse를 사용하여 태그 (태그 자체 포함) 사이의 모든 것을 제거합니다.

나는 많은 < description>blahblahblah</description 태그를 가진 거대한 XML 문서를 가지고있다. 기본적으로 <description></description>의 모든 인스턴스를 제거하고 싶습니다.

저는 Eclipse를 사용 중이며 온라인에서 찾은 Regex의 몇 가지 예제를 시도했지만 아무 것도 작동하지 않습니다.

<description>(.*?)</description> 

그럴까요?

편집 :

여기 실제 코드가 있습니다.

<description><![CDATA[<center><table><tr><th colspan='2' align='center'><em>Attributes</em></th></tr><tr bgcolor="#E3E3F3"><th>ID</th><td>308</td></tr></table></center>]]></description> 
+0

네, 작동해야합니다 (중첩 된 태그가 엉망이 될지라도). 실제 코드를 게시 할 수 있습니까? –

+0

감사합니다. mmyers, 원래 글을 수정했습니다. – dallen

+0

사실 XML이 아니라 Java 코드를 의미했습니다. :) –

답변

2

저는 Eclipse에 익숙하지 않지만 정규 표현식 검색 기능이 Java의 기본 정규 표현식을 사용할 것으로 기대합니다. ,

(?s)<description>(.*?)</description> 

.가 개행 문자와 일치 할 수 있도록 그 : 당신은 아마 그냥 "DOTALL"또는 "한 줄"또는 이와 유사한 표시 상자를 확인해야하거나 정규식에 해당하는 인라인 수정을 추가 할 수 있습니다 기본적으로 그렇지 않습니다.

편집 : 이것은 <description> 요소 내에 개 줄이기 때문에 정규식이 작동하지 않는 이유를 생각할 수있는 유일한 이유입니다. 나는 또한 당신이 정말로 정규 표현식 검색을하고 있다고 가정하고있다. 이클립스에서 자동으로 실행 되는가 아니면 정규식과 문자 검색 중 하나를 선택해야 하는가?

+0

upvoted, 많이 감상했습니다. – reevesy

관련 문제