2014-04-28 2 views
1

어떻게 파이썬에서 정규식을 사용하여 대괄호 사이의 신호 만 하나의 파일로 검색 할 수 있습니까? 나는이 같은 텍스트가있는 경우 그래서 :대괄호 사이의 문자열을 정규식을 사용하여 검색

</seg> 
<src>Sono stati riportati casi di (sgomberi forzati) e violazioni dei diritti umani da parte della polizia, ma su scala minore rispetto agli anni precedenti.</src> 

을하고 난 단지

을 (sgomberi forzati)을 감지 할 나는

for line in file.readlines(): 
    m=re.compile('\((.*?)\)', re.DOTALL).findall(line) 
    print m 

사용하지만 내가 필요한 인쇄되지 않습니다 : 이 같은 빈 괄호도 인쇄합니다.

[] 
[u'sgomberi forzati'] 
+0

_ "하지만 내가 필요한 반환하지 않습니다"_ : S는 다음과 같다. 말이된다. 코드에서 return 문을 사용하지 않기 때문에 아무 것도 반환하지 않습니다. "필요한 것을 인쇄하지 않는다"는 뜻이라면 : [나를 위해 일합니다] (http://ideone.com/oZMDQ1). ''지역 경제 ','교통 ''이외의 것을 인쇄하고 싶지 않다면? 어떤 결과물을 기대 하시는지 설명해주십시오. – Kevin

+0

예, 필요한 것을 인쇄하지 않습니다. – sss

+0

예상되는 출력의 종류를 설명하십시오. – Kevin

답변

1

귀하의 ()

m = re.compile('\((.*?)\)', re.DOTALL).findall(line)

+0

코드의 새로운 내용은 무엇입니까? – sss

+0

@ user3573552, 잠깐, 당신이''((*?)) ''을했다는 것을 맹세합니다. 다른 사람이 코드를 변경했습니다. o.O – sshashank124

+0

코드의 첫 번째 버전에는 슬래시가 있지만 보이지 않습니다. 코드 블록에 넣을 때 나타났습니다. – Kevin

관련 문제