web-dev-qa-db-ja.com

Python文字列内のすべての単語を検索するための正規表現

こんにちは、私は正規表現の初心者で、Pythonから始めています。私は英語の文章からすべての単語を抽出することに行き詰まっています。これまでのところ:

import re

shop="hello seattle what have you got"
regex = r'(\w*) '
list1=re.findall(regex,shop)
print list1

これは出力を与えます:

['hello'、 'seattle'、 'what'、 'have'、 'you']

正規表現を

regex = r'(\w*)\W*'

次に出力:

['hello'、 'seattle'、 'what'、 'have'、 'you'、 'got'、 '']

この出力が欲しいのに

['hello'、 'seattle'、 'what'、 'have'、 'you'、 'got']

私が間違っているところを指摘してください。

8
TNT

単語境界を使用\b

import re

shop="hello seattle what have you got"
regex = r'\b\w+\b'
list1=re.findall(regex,shop)
print list1

OP : ['hello', 'seattle', 'what', 'have', 'you', 'got']

または単に\w+で十分です

import re

shop="hello seattle what have you got"
regex = r'\w+'
list1=re.findall(regex,shop)
print list1

OP : ['hello', 'seattle', 'what', 'have', 'you', 'got']
9
Pranav C Balan