文字列の.Lengthプロパティを使用してこの問題を修正できますか?私は経験豊富なPythonプログラマないんだけど、ここで私はどのように考えるか、それが動作するはずさ:
for each_line in txtFreeForm:
match = re.search('add roth',each_line.lower())
if (match is not None) and (len(txtFreeForm) == len("Add Roth")):
print(each_line)
基本的には、テキストが文字列である場合、文字列の長さは、文字列の長さに正確です"Add Roth"を選択すると、 "Add Roth"だけが含まれている必要があります。
これは役に立ちましたと思います。
編集:私はあなたが求めていたものを誤解
。あなたは "Add Roth"を含む文章を印刷したいが、 "Add Roth in plan"を含む文章は印刷したくない。これは正しいです?
このコードはどうですか?
for each_line in txtFreeForm:
match_AR = re.search('add roth',each_line.lower())
match_ARIP = re.search('add roth in plan',each_line.lower())
if (match_AR is True) and (match_ARIP is None):
print(each_line)
これは問題を修正する必要があるようです。任意の文字列(「計画中」など)を検索して比較に追加することで除外できます。
"Add roth"が両方とも含まれていると、2つの文字列が返されないのはなぜですか? –
'each_line.lower():...'に 'add roth'を追加すると、この問題を解決するのにもっと安い方法です。 're'は必要ありません。 – DyZ
私は 'in'はそれを行うより安価な方法であることに同意します。 @AndreiSavin私はテキストで見つかった場合、それが両方返されることを知っています。 'rothを追加する'と '計画を追加する'を含む文を区別する方法を探しています –