반응형
Python에서 문자열이 대문자, 소문자 또는 대소 문자 혼합인지 확인
대문자, 소문자 또는 대소 문자 혼합 여부에 따라 Python에서 문자열 목록을 분류하고 싶습니다.
어떻게 할 수 있습니까?
문자열에는 여러 "is 메소드"가 있습니다. islower()
및 isupper()
요구 사항을 충족해야합니다 :
>>> 'hello'.islower()
True
>>> [m for m in dir(str) if m.startswith('is')]
['isalnum', 'isalpha', 'isdigit', 'islower', 'isspace', 'istitle', 'isupper']
다음은 이러한 메서드를 사용하여 문자열 목록을 분류하는 방법의 예입니다.
>>> words = ['The', 'quick', 'BROWN', 'Fox', 'jumped', 'OVER', 'the', 'Lazy', 'DOG']
>>> [word for word in words if word.islower()]
['quick', 'jumped', 'the']
>>> [word for word in words if word.isupper()]
['BROWN', 'OVER', 'DOG']
>>> [word for word in words if not word.islower() and not word.isupper()]
['The', 'Fox', 'Lazy']
이를 위해 re
모듈을 사용하여 한마디 부탁드립니다 . 특히 대소 문자 구분의 경우.
대량의 데이터가있는 프로덕션 환경에서 사용하기 위해 정규식을 컴파일하는 동안 re.IGNORECASE 옵션 을 사용합니다.
>>> import re
>>> m = ['isalnum','isalpha', 'isdigit', 'islower', 'isspace', 'istitle', 'isupper', 'ISALNUM', 'ISALPHA', 'ISDIGIT', 'ISLOWER', 'ISSPACE', 'ISTITLE', 'ISUPPER']
>>>
>>>
>>> pattern = re.compile('is')
>>>
>>> [word for word in m if pattern.match(word)]
['isalnum', 'isalpha', 'isdigit', 'islower', 'isspace', 'istitle', 'isupper']
그러나이 in
게시물에 설명 된대로 문자열 비교 에 항상 연산자를 사용하십시오.
또한 파이썬 학습을 시작하기에 가장 좋은 책 중 하나에 자세히 설명되어 있습니다.
참고 URL : https://stackoverflow.com/questions/8222855/check-if-string-is-upper-lower-or-mixed-case-in-python
반응형
'programing' 카테고리의 다른 글
Java에서 Long에서 Double로 변환 (0) | 2020.10.05 |
---|---|
PHP 파일에서 반환 배열을로드하는 방법은 무엇입니까? (0) | 2020.10.05 |
Asp.net Identity MVC 5에서 역할 만들기 (0) | 2020.10.05 |
Postgis 설치 : "지오메트리"유형이 없습니다. (0) | 2020.10.04 |
한 줄의 머리와 꼬리 (0) | 2020.10.04 |