1. ホーム
  2. php

[解決済み】++と*+の意味は何ですか?

2022-01-26 16:53:15

質問

PHPからJavaScriptにいくつかのライブラリを移植しているのですが、この正規表現に出会ったのですが、いくつかの部分が不明瞭です。

#(?: *+(?<= |^)\.((?:\([^)\n]++\)|\[[^\]\n]++\]|\{[^}\n]++\}|<>|>|=|<){1,4}?))#

不鮮明な箇所は

  1. *+
  2. {{コード {を使用します。

この式は、次のような文字列を受け入れる必要があることは分かっています。

++

この式は、次のように使われます。 .(title)[class]{style}<> .[class]{style}<> .[class](title){style} // and so one - no metter of order \(.+\), \[.+\] and \{.+\} parts // and optional <>, >, = or < at the end 修飾子を使用します。

解決方法は?

{コード

から 正規表現におけるダブルプラスとは?

それは 所有量詞 .

これは基本的に、正規表現エンジンが後でマッチングに失敗しても、ここで行ったマッチングを元に戻そうとはしないことを意味します。たいていの場合、これはエンジンに より速く失敗する また、ほとんどの用途では非常に稀なことですが、必要な場所で制御を行うことができます。

PCRE_UNGREEDY

{{コード は所有量詞で ++