2012-04-18 4 views
1

Я перемещаю старую базу данных mysql моего клиента в новую систему wordpress (старый тоже был wp), и я заметил, что его статьи сохранены с тоннами и тоннами HTML <p></p> теги, полные различных стилей из-за импорта содержимого непосредственно из MS Word. Я уже убедил клиента использовать Paste From Word и очистить его после своих статей до сохранения новых.Очистка старой базы данных, полной html-тегов

Теперь существует ли какой-либо безопасный способ удалить все уже сохраненные теги <p style="different_styles_every_time"></p>, не оставляя мусор позади и, надеюсь, сохранив первоначальные разрывы строк?

Я начал изучать регулярное выражение, но многие ответы здесь советуют не использовать его для анализа HTML. Любые подсказки?

ответ

1

Вот безопасный процесс, который я использую во время процесса «предварительной очистки» из аналогичной ситуации с БД (html хранится). К сожалению, он написан на Java, но концепция (и регулярное выражение) может применяться к запросу SQL-запроса ,

Одно замечание: я бы рекомендовал не только выполнять резервное копирование до этого, но и тестировать «безопасную» версию БД. Конечно, для любой процедуры обновления такого размера вы, вероятно, уже знаете риски.

на Примечание: «БЛОК HTML ОЧИСТКИ» не должно быть истолковано как строковый литерал, а просто запиской «displayContent переменная держит HTML результат БД, в данном случае только 1 итерация результирующем внутри цикла.

String displayContent = "THE BLOCK OF HTML TO CLEAN"; 
String tagregex = "<p[^>]*>"; 
Pattern p2 = Pattern.compile(tagregex); 
Matcher m2 = p2.matcher(displayContent); 
displayContent = m2.replaceAll(""); 
displayContent = displayContent.replaceAll("</p>", ""); 

конечно, Вы можете использовать это для любых других HTML-теги + их атрибуты. удачи!

+0

Я предполагаю, что это будет на самом деле это сделать. Параметр '] * > 'часть - это то, чего я больше всего боялся, и, похоже, она работает нормально для моих нужд, поэтому спасибо! – moraleida

+0

Да, на самом деле нет возврата после того, как этот запрос обновления был недействительным к откату hahaha - рад, что он сработал! –

Смежные вопросы