text = "This is a TEXT CONTAINING UPPER CASE WORDS and lower case words. This is a SECOND SENTENCE."
pattern = '[A-Z]+[A-Z]+[A-Z]*[\s]+'
re.findall(pattern, text)
출력을 제공합니다->
['TEXT ', 'CONTAINING ', 'UPPER ', 'CASE ', 'WORDS ', 'SECOND ', 'SENTENCE ']
그러나 다음과 같은 출력을 원합니다 .-->
['TEXT CONTAINING UPPER CASE WORDS', 'SECOND SENTENCE']
이 정규식을 사용할 수 있습니다.
\b[A-Z]+(?:\s+[A-Z]+)*\b
RegEx 세부 정보 :
\b
: 단어 경계[A-Z]+
: 대문자로만 구성된 단어 일치(?:\s+[A-Z]+)*
: 1+ 공백 다음에 대문자로 된 다른 단어를 찾습니다. 이 그룹과 0 번 이상 일치\b
: 단어 경계암호:
>>> s = 'This is a TEXT CONTAINING UPPER CASE WORDS and lower case words. This is a SECOND SENTENCE';
>>> print (re.findall(r'\b[A-Z]+(?:\s+[A-Z]+)*\b', s))
['TEXT CONTAINING UPPER CASE WORDS', 'SECOND SENTENCE']
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다