単語を検索して文字列を分割する方法は分かっています。例:単語で分割するPythonの正規表現
どのように私は同じことをすることができますが、単語の始まりを知っている?たとえば、文字列を "consect *"で分割し、 "consectetur"の一致で分割したいとします。ありがとう
単語を検索して文字列を分割する方法は分かっています。例:単語で分割するPythonの正規表現
どのように私は同じことをすることができますが、単語の始まりを知っている?たとえば、文字列を "consect *"で分割し、 "consectetur"の一致で分割したいとします。ありがとう
任意の単語文字に一致するように\w
を使用するか、ASCIIアルファベット文字のみを使用する場合は[A-Za-z]
を使用してください。
r = re.compile('(consect\w*)')
単に正規表現として(consect\w*)
を使用します。
In [3]: import re
In [4]: s = 'Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua'
In [5]: r = re.compile(r'(consect\w*)')
In [6]: r.split(s)
Out[6]:
['Lorem ipsum dolor sit amet, ',
'consectetur',
' adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua']
\w*
は、英数字の任意のシーケンスにマッチします。要件が異なる場合は\w
を別の文字クラスに置き換えることができます。
Python正規表現の詳細については、Regular Expression Syntaxを参照してください。
使用\w
:英数字プラス "_" [A-ZA-Z0-9_]
r = re.compile('(consect\w*)')
又は\S
使用:非空白文字[^ \ T \ R \ n \ V \ F]
r = re.compile('(consect\S*)')
「単語」が何であるかによって異なります。 'consect [^ \ s] *' –
以下の答えを明確にするため、 'string.split'は与えられた文字列の出現ごとに文字列を分割します。 're.split'は与えられた正規表現の各マッチで文字列を分割します。 – katrielalex