1

私はこのテキストを持っています:

<span id="3">

HELLO THERE
<span id="5">
Other stuff
<span id="6">
Other Stuff
<span id="7">
Other sutff

<span...>テキストの後の要素だけを取得する必要がありHELLO THEREます。したがって、上記の例では、id=3 のスパンを除くすべてのスパンです。

そこで(<span.+?>)+、すべてのスパンを取得する方法を試しました。次に、 を試しHELLO THERE.+?(<span.+?>)+ましたが、最初に関連するものしか取得できませんでした。だから私の質問は、ここで使用する正しい正規表現は何ですか?

4

2 に答える 2

0

この正規表現は、Hello There の後のすべてのタグを一致するグループにキャプチャします。

HELLO THERE(?:(?:.*?)(<span[^>]+>))+
  • HELLO THERE
    -非キャプチャ グループ内の先頭に一致:
  • (?:.*?)- 見つかるまで任意のテキストにマッチ
  • (<span[^>]+>)- span タグ - これがキャプチャされます
  • +- 他のスパン タグが見つからなくなるまで、前の 2 つの手順を繰り返します。

また、一致オプションをドットと新しい行に一致するように設定する必要があります。

于 2012-04-28T12:53:26.497 に答える