私は次のステートメントを持っています
echo preg_replace("/(?<=\d)(th|rd|st|nd)([^0-z])/i","<sup>$1</sup>$2","some text 1st<br />\n2nd<br />\n3rd<br />\n4th 5th 21nd 33rd 41st<br />\nsome text");
そしてそれは出力します
some text 1st<br />
2nd<br />
3rd<br />
4<sup>th</sup> 5<sup>th</sup> 21<sup>nd</sup> 33<sup>rd</sup> 41st<br />
some text
すべての場合に、th、rd、st、またはndを上付き文字で囲む方法がわかりません。