[PYTHON] 파이썬에서 대괄호 안에있는 문자열 가져 오기
PYTHON파이썬에서 대괄호 안에있는 문자열 가져 오기
샘플 문자열은 다음과 같습니다. alphaCustomer [cus_Y4o9qMEZAugtnW] active_card =
나는 단지 가치가 cus_Y4o9qMEZAugtnW이고 카드가 아님 (다른 [] 안에 있음)
파이썬에서 어떻게 할 수 있습니까? 어쩌면 RegEx를 사용하여 (나는 잘하지 못한다)?
해결법
-
==============================
1.어때?
어때?
import re s = "alpha.Customer[cus_Y4o9qMEZAugtnW] ..." m = re.search(r"\[([A-Za-z0-9_]+)\]", s) print m.group(1)
나를 위해이 인쇄물 :
cus_Y4o9qMEZAugtnW
re.search (...)를 호출하면 정규 표현식에 처음으로 일치하므로 두 번째 검색을 반복하지 않는 한 [카드]를 찾지 않습니다.
편집 : 여기 정규 표현식은 파이썬 원시 문자열 리터럴입니다. 기본적으로 백 슬래시는 특수 문자로 처리되지 않고 re.search () 메서드에 그대로 전달됩니다. 정규 표현식의 부분은 다음과 같습니다.
편집 : D K가 지적한대로 정규식은 다음과 같이 단순화 될 수 있습니다.
m = re.search(r"\[(\w+)\]", s)
\ w는 re.LOCALE 및 re.UNICODE 설정에 따라 [a-zA-Z0-9_]와 동일한 의미를 갖는 특수 시퀀스이기 때문입니다.
-
==============================
2.이 일을해야합니다 :
이 일을해야합니다 :
re.match(r"[^[]*\[([^]]*)\]", yourstring).groups()[0]
-
==============================
3.이렇게하려면 str.split을 사용할 수 있습니다.
이렇게하려면 str.split을 사용할 수 있습니다.
s = "<alpha.Customer[cus_Y4o9qMEZAugtnW] active_card=<alpha.AlphaObject[card]\ ...>, created=1324336085, description='Customer for My Test App',\ livemode=False>" val = s.split('[', 1)[1].split(']')[0]
그럼 우리는 :
>>> val 'cus_Y4o9qMEZAugtnW'
-
==============================
4.
your_string = "lnfgbdgfi343456dsfidf[my data] ljfbgns47647jfbgfjbgskj" your_string[your_string.find("[")+1 : your_string.find("]")]
예의 : 괄호 사이에 텍스트를 반환하는 정규식
-
==============================
5.당신은 또한 사용할 수 있습니다
당신은 또한 사용할 수 있습니다
re.findall(r"\[([A-Za-z0-9_]+)\]", string)
찾으려는 사건이 많이있는 경우
자세한 정보는 다음을 참조하십시오. 어떻게하면 파이썬에서 정규 표현식과 일치하는 것을 모두 찾을 수 있습니까?
from https://stackoverflow.com/questions/8569201/get-the-string-within-brackets-in-python by cc-by-sa and MIT license
'PYTHON' 카테고리의 다른 글
[PYTHON] OSX에서 Python 2.6 용 MySQLdb 설치하기 [duplicate] (0) | 2018.10.27 |
---|---|
[PYTHON] 절대 수입을 사용하는 경우 (0) | 2018.10.27 |
[PYTHON] 부모와 자식 살해 (0) | 2018.10.27 |
[PYTHON] 목록을 피클하는 방법? [닫은] (0) | 2018.10.27 |
[PYTHON] 매버릭스에 베개 / PIL 설치하기 (0) | 2018.10.27 |