[PYTHON] 대소 문자 무시 문자열에서 부분 문자열을 일치시키는 방법은 무엇입니까?
PYTHON대소 문자 무시 문자열에서 부분 문자열을 일치시키는 방법은 무엇입니까?
나는 파이썬에서 케이스 문자열 비교를 무시하고 찾고있다. 나는 다음과 같이 시도했다.
if line.find('mandy') >= 0:
그러나 무시 무시한 경우에는 성공하지 못합니다. 주어진 텍스트 파일에서 일련의 단어를 찾아야합니다. 나는 한 줄씩 파일을 읽고있다. 줄의 단어는 mandy, Mandy, MANDY 등이 될 수 있습니다 (toupper / tolower 등을 사용하고 싶지 않습니다).
나는 아래의 Perl 코드와 동일한 Python을 찾고있다.
if($line=~/^Mandy Pande:/i)
해결법
-
==============================
1.str.lower ()를 사용하지 않으려면 regexp를 사용할 수 있습니다.
str.lower ()를 사용하지 않으려면 regexp를 사용할 수 있습니다.
import re if re.search('mandy', 'Mandy Pande', re.IGNORECASE): # is True
-
==============================
2.다른 게시물이 있습니다. 이것을 보아라.
다른 게시물이 있습니다. 이것을 보아라.
BTW, 당신은 .lower () 메소드를 찾고있다.
string1 = "hi" string2 = "HI" if string1.lower() == string2.lower(): print "Equals!" else: print "Different!"
-
==============================
3.
a = "MandY" alow = a.lower() if "mandy" in alow: print "true"
해결하다
-
==============================
4.
import re if re.search('(?i)Mandy Pande:', line): ...
-
==============================
5.이것 좀 봐.
이것 좀 봐.
In [14]: re.match("mandy", "MaNdY", re.IGNORECASE) Out[14]: <_sre.SRE_Match object at 0x23a08b8>
-
==============================
6.시험:
시험:
if haystackstr.lower().find(needlestr.lower()) != -1: # True
from https://stackoverflow.com/questions/6579876/how-to-match-a-substring-in-a-string-ignoring-case by cc-by-sa and MIT license
'PYTHON' 카테고리의 다른 글
[PYTHON] numpy를 사용하는 가중 백분위 수 (0) | 2018.11.20 |
---|---|
[PYTHON] 파일에서 읽은 목록의 줄 바꿈 문자 제거 [duplicate] (0) | 2018.11.20 |
[PYTHON] Python 정규식, 여러 줄에 걸쳐 패턴 일치. 왜이 코드가 작동하지 않습니까? (0) | 2018.11.20 |
[PYTHON] 가치에 기반한 팬더 조회 (0) | 2018.11.20 |
[PYTHON] 어떻게 데이터 프레임 인덱스를 배열로 가져 옵니까? (0) | 2018.11.20 |