HTMLタグを検出するための正規表現を紹介します。
式の前後の"<" ">" がタグの開始と終了です。正規表現では通常はできるだけ長い文字列に一致する動作ですが、"?"を記述することで、できるだけ少ない文字数で一致する動作になります。
()内のグループは
となっており、それらグループが任意の個数含まれるものを検出します。
式の前後の"<" ">" がタグの開始と終了です。
()内のグループは
となっており、それらグループが任意の個数含まれるものを検出します。
下記の式でも検出可能です。
ただし、タグ内に改行コードが含まれている場合は、検出できません。また、タグ内にタグが記述されている場合も検出できません。
<img src="image.png"
width=200
height=64>
<img src="image.png" title='<img>タグ' />
上記の正規表現式の"?"文字は、最短パターンでの一致ではなく"/"文字が0個、または1個を示す文字です。
上記の正規表現では、改行されているタグは検出できますが、タグ内にタグが記述されている場合は、うまく検出できません。