ホームページ >バックエンド開発 >Python チュートリアル >文字列のリスト内で部分文字列を効率的に見つけるにはどうすればよいですか?

文字列のリスト内で部分文字列を効率的に見つけるにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-12-17 07:04:25312ブラウズ

How Can I Efficiently Find Substrings Within a List of Strings?

リスト内の部分文字列の検索

文字列のリストが与えられた場合、その要素内に特定の文字列が出現するかどうかを確認する必要がある場合があります。完全一致を検索する一般的なアプローチとは異なり、ターゲット文字列を部分文字列として含む文字列を識別する必要があります。

たとえば、リスト xs = ['abc-123', 'def-456 を考えてみましょう。 '、'ghi-789'、'abc-456'】。 xs で if 'abc' を使用して 'abc' の完全一致をチェックすると、その正確な出現のみが検出され、'abc-123' や 'abc-456' などの部分文字列が見逃されます。

部分文字列を見つけるには、次を利用できます。 in 演算子とリスト内包表記の組み合わせ。以下のコードは、リストの要素の部分文字列として 'abc' が存在することを検証します。

xs = ['abc-123', 'def-456', 'ghi-789', 'abc-456']

if any("abc" in s for s in xs):
    # 'abc' is present as a substring in at least one element

あるいは、'abc' を含むすべての要素を取得したい場合は、リストを変更できます。次のように理解します:

xs = ['abc-123', 'def-456', 'ghi-789', 'abc-456']

matching = [s for s in xs if "abc" in s]

print(matching)  # ['abc-123', 'abc-456']

以上が文字列のリスト内で部分文字列を効率的に見つけるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。