Как сказали все остальные: RegExp плох, по крайней мере, здесь!
Итак, базовое регулярное выражение равно
#<td[^>]*>(.*?)</td>#s
(заметьте, я использовал s-модификатор, в противномRegExp не сработает.)
Теперь этот RegExp неверен, даже если он подходит для ваших целей.Чтобы быть более строгим, вы должны знать, что >
допускается в атрибутах.Поэтому это регулярное выражение может сломать вещи.
#<td(\s+\w+="[^"]+")\s*>(.*?)</td>#s
Я думаю, что теперь это будет довольно безопасно, если вы имеете дело с XML.Но, конечно, это может сломаться в редких случаях, которые я сейчас не могу придумать.