これがシナリオです
この正規表現を使用して、id test1、または tes2 または test3 の div タグ内のテキストを取得しています
<div id = "test1">text</div>
<div id = "test2">text</div>
<div id = "test3">text</div>
$id_value = "test1" or "test2" or "test3";
$regex = "#\<div id=\"".$id_value."\"\>(.+?)\<\/div\>#s";
私の唯一の要件は、以下のシナリオで div タグからテキストを取得することです
<div id="test" class="testing" style="color:red" etc etc .... more attributes >text</div>
つまり、id は div タグの 1 番目の属性であり、その後に n 個の属性を続けることができます。このようなタグから正規表現のみでテキストを抽出する方法。
私も試してみました
$regex = '#<div\s+.*?id="".$id_value."".*?>(.*?)</\s*div>#ims';
$id_value = "test1" の場合は div タグのテキストを返しますが、$id_value="test2" の場合はノード test1 と test2 の両方のテキスト値を返します。$id_value="test3" の場合、3 つのノードすべてのテキスト値が返されます。特定の ID のみに関連するテキスト値が必要です。正規表現のみを使用します。
助けてくださいありがとう。