Когда у вас есть (State)
в регулярном выражении, оно будет соответствовать термину State
во входной строке как группе, оно не будет совпадать с литеральными круглыми скобками во входных данных - вам нужно будет экранировать их, как выс /
s - /\(State\)<\/...
.
Тогда возникает проблема, заключающаяся в том, что вокруг много пробелов (включая новые строки - вам нужно будет включить модификатор m
) и <b/>
пометить заголовок, который вы, кажется, не включили в регулярное выражение.Даже если вы исправите эти проблемы, вы будете в значительной степени зависеть от точной разметки, используемой веб-сайтом, который вы просматриваете.Это общая проблема, с которой вы столкнетесь при разборе HTML с помощью регулярных выражений.Было бы лучше использовать HTML-парсер (например, создать новый DOMDocument
и вызвать его метод loadhtml
).