Изменить (потенциально) много URL-адресов в документе HTML на C++

Мне дают строку, которая содержит содержимое документа HTML, и мне нужно изменить некоторые URL-адреса, содержащиеся в документе. URL, которые необходимо изменить, начинаются с формы:

<script src="https://foo.com/some/variable/path/to/file.js" ...

И должен быть изменен на:

<script src="https://foo.com/some/variable/path/to/NEW/file.js" ...

Мой текущий подход состоял в том, чтобы использовать функцию Google RE2 GlobalReplace с регулярным выражением:

"(?i)(<script\\s+(?:[^>]+\\s+)?src=[\"']https://foo\\.com/" "(?:.*?/)*?)(.*?\\.js[\"'][^>]*>)"

Это почти работает, пока я не понял, что возможно, что в HTML, который я дал, уже могут быть изменены некоторые URL-адреса, а некоторые нет, первый из которых следует оставить в покое.

Вопрос: Какой самый простой способ изменить URL-адреса, не изменяя те, которые уже были изменены в апстриме?

Единственный подход прохода важен.

0 ответов

Другие вопросы по тегам