방법 # 1: split()
사용
split 함수를 사용하여 문자열을 단어 목록으로 분할할 수 있으며 이것이 가장 일반적입니다. 누군가가 이 특정 작업을 완료하려는 경우 권장되는 방법입니다. 그러나 단점은 문자열에 구두점이 포함된 경우 작동하지 않는다는 것입니다.
# Python3 데모 코드
< br> # 문자열에서 단어 추출
# split() 사용
# 초기화 문자열
test_string
=
"Geeksforgeeks는 최고의 컴퓨터 과학 포털입니다."
# 원본 줄 인쇄
인쇄
(
"원래 문자열은 다음과 같습니다."
+
test_string)
# split() 사용
# 문자열에서 단어 추출
r es
<코드 클래스 = "키워드"> = <코드 클래스 = "일반"> test_string.split ()
<코드 클래스 = " comment"> # 결과 인쇄
인쇄
(
"단어 목록은 다음과 같습니다."
+
str
(res) )
종료:
원래 문자열은 다음과 같습니다. Geeksforgeeks is best Computer Science Portal
The 단어 목록은 다음과 같습니다. [`Geeksforgeeks`,` is`, `best`, `Computer`, `Science`, `Portal`]
방법 # 2: regex (findall ())
위에서 설명한 것처럼 모든 특수 문자와 구두점이 포함된 경우 tr 분할을 사용하여 문자열에서 단어를 검색하는 기존 방법은 실패할 수 있으며 따라서 이 작업을 수행하려면 정규식이 필요합니다. findall
함수는 구두점을 무시하고 문자열을 필터링하고 단어를 추출한 후 목록을 반환합니다.
# Python3 데모 code
# 문자열에서 단어 추출
# 정규 표현식 사용(findall())
가져오기
다시
# 초기화 문자열
test_string
=
"Geeksforgeeks , 최고 @ # Computer Science Portal입니다. !!!"
# 원본 줄 인쇄
인쇄
(
"원래 문자열은 다음과 같습니다. "
+
test_string)
# 정규 표현식 사용(findall())
# 문자열에서 단어 추출
res
=
re.findall (r
`w +`
, test_string)
# 결과 인쇄
인쇄
(
"단어 목록은 다음과 같습니다."
+
str
<코드 클래스 = "일반"> (res))
출력:
원래 문자열은 다음과 같습니다. Geeksforgeeks, is best @ # Computer Science Portal. !!!
단어 목록은 다음과 같습니다. [`Geeksforgeeks`, `is`, `best`, `Computer `,` Science `,` Portal `]
방법 #3: 정규식() + string.punctuation 사용
이 방법도 정규식을 사용했지만 모든 구두점 문자열 가져오기 기능을 사용하여 모든 구두점을 무시하고 필터링된 결과 문자열을 가져옵니다.
p>
# Python3 데모 코드
# 문자열에서 단어 추출
< br> # 정규식() + string.punctuation 사용
가져오기
다시
가져오기
문자열
# 문자열 초기화
test_string
=
" Geeksforgeeks, @ # Computer Science Portal이 최고입니다. !!! "
# 원본 문자열 인쇄
인쇄
(
" 원래 문자열은 다음과 같습니다. "
+
test_string)
# 정규식() + string.punctuation 사용
# 문자열에서 단어 추출
res
=
<코드 클래스 = "일반"> re.sub ( <코드 클래스 = "문자열"> `[` <코드 클래스 = "키워드"> + <코드 클래스 = "일반 "> 문자열.구두점 <코드 클래스 = " 키워드 "> + <코드 클래스 ="문자열 ">`] ` <코드 클래스 ="일반 ">,` `, test_string ) .split ()
# 결과 출력
인쇄
<코드 클래스 = "일반"> ( <코드 클래스 = "문자열 g"> "단어 목록은 다음과 같습니다." +
str
( res))
종료:
원래 문자열은 Geeksforgeeks, is best @ # Computer Science Portal입니다. !!!
단어 목록: [`Geeksforgeeks`, `is`, `best`, `Computer`, `Science`, `Portal`]