반응형
괄호 사이에 텍스트를 반환하는 정규식
u'abcde(date=\'2/xc2/xb2\',time=\'/case/test.png\')'
필요한 것은 괄호 안의 내용입니다.
문제가 정말 간단하면 정규식이 필요하지 않습니다.
s[s.find("(")+1:s.find(")")]
사용 re.search(r'\((.*?)\)',s).group(1)
:
>>> import re
>>> s = u'abcde(date=\'2/xc2/xb2\',time=\'/case/test.png\')'
>>> re.search(r'\((.*?)\)',s).group(1)
u"date='2/xc2/xb2',time='/case/test.png'"
모든 항목을 만나면 :
>>> re.findall('\(.*?\)',s)
[u"(date='2/xc2/xb2',time='/case/test.png')", u'(eee)']
>>> re.findall('\((.*?)\)',s)
[u"date='2/xc2/xb2',time='/case/test.png'", u'eee']
tkerwin의 답변을 기반으로, 다음과 같이 중첩 된 괄호가있는 경우
st = "sum((a+b)/(c+d))"
대답은 당신 그의이 사이에있는 모든 수행 해야하는 경우 작동하지 않습니다 보기 처음 여는 괄호 와 마지막 닫는 괄호 얻기를 (a+b)/(c+d)
에서 찾기 검색은 문자열의 왼쪽 있기 때문에, 첫 번째 닫는 괄호에서 멈출 것입니다.
문제를 해결이하려면 rfind
작업의 두-th 부분에 사용해야 합니다.
st[st.find("(")+1:st.rfind(")")]
import re
fancy = u'abcde(date=\'2/xc2/xb2\',time=\'/case/test.png\')'
print re.compile( "\((.*)\)" ).search( fancy ).group( 1 )
참고 URL : https://stackoverflow.com/questions/4894069/regular-expression-to-return-text-between-parenthesis
반응형
'IT' 카테고리의 다른 글
각도 2의 배열에서 항목 제거 (0) | 2020.09.17 |
---|---|
Meteor 게시 / 구독 이해 (0) | 2020.09.17 |
JavaScript에서 URL로 이동하는 onclick 함수를 추가 하시겠습니까? (0) | 2020.09.17 |
Android에서 탐색 창에 하나의 섹션 구분 기호를 추가하는 방법은 무엇입니까? (0) | 2020.09.17 |
원사를 제거하는 방법 (0) | 2020.09.17 |