あまり関係ありません。正規表現文字列の最初と最後にマーカー文字を追加するだけです。
通常、マーカー文字はスラッシュ ( )ですが、文字列の最初と最後で同じ文字である限り、他の文字にする/
こともできます (チルダは非常に一般的に使用され、ここではうまく機能します)。 ~
t が文字列内に表示されます (その場合はバックスラッシュでエスケープする必要があります)。
したがって、コードは次のようになります。
preg_match('~.*pointer ([A-Za-z0-9.-]+)\..*~', $output, $regs)
正規表現マーカー文字としてスラッシュを使用する場合、スラッシュは PHP 文字列のエスケープ文字でもあるため、二重にする必要があることに注意してください。
実際の表現を説明すると:
.*
- これは、文字列の先頭にある任意の文字の任意の数です (実際には、この式からこれを除外できます。マッチングには影響しません)
pointer
- これは、一致する文字列内の実際の単語 'pointer' を探しています。
([A-Za-z0-9.-]+)
- 英数字、ドット、またはハイフンの 1 つ以上の文字を探します。さらに、これらは括弧で囲まれているため、「一致するグループ」になります。これは、検索のこの部分の結果が$regs[1]
.
\..*
- 任意の数の任意の文字が続くドット文字を探します。試合開始時と同様.*
に、マッチングに影響しないのでドロップしても構いません。
したがって、式全体は次のような文字列を探しています。
blahblahblahpointer blah123-.blah.blahblahblah
そこから、あなたはblah123-.blah
入ります$regs[1]
。