2

こんな質問をするのはちょっとばかげているように感じますが、HTML ドキュメント内の特定の企業、住所、および URL を見つけるために、いくつかの正規表現を作成しました。問題は...どの(python)正規表現を使用すればよいかわかりません。re.findall を使用すると、30 から 90 の結果が得られます。3個か5個(1セット数)に抑えたいです。これを行うにはどの正規表現操作を使用する必要がありますか、または特定の数の結果に達したときに検索を停止できるパラメーターはありますか?

また、この非常に長いテキストの「文字列」を検索する正規表現でプログラムの速度が低下しないように、HTML ドキュメントを検索するより高速な方法はありますか?

ありがとう。

編集

私は Beautiful Soup を持っていて、物事を読みやすくするためにそれを使用しましたが、解析するためではありません。

lxml も使用しました...どちらが優れている/高速ですか?

4

1 に答える 1

1

を使用する代わりに、をre.findall使用してre.finditerください。要求に応じて次の一致を生成するイテレータを返します。

次に例を示します。

>>> [m.group(0) for m, _ in zip(re.finditer(r"\w", "abcdef"), range(3))]
['a', 'b', 'c']
于 2012-08-11T01:11:39.010 に答える