サンプルコード
<?php $sWord = "<body> <p>渋 谷 区 </p> <p>住所:〒150-8010 東京都渋谷区</p> <p>ホームページ:https://www.example.jp/<br>電話番号:03-1111-1111</p> <script> alert('msg'); </script> </body>"; //「改行コード」の統一 $sWord = preg_replace("#\r\n|\r#", "\n", $sWord); //「HTMLエンティティ」を適切な文字に戻す $sWord = html_entity_decode($sWord, ENT_QUOTES, 'utf-8'); $sWord = preg_replace('#<br[[:space:]]*\/?[[:space:]]*>#i', "\n", $sWord); $sWord = preg_replace('#<\/?[[:space:]]*br[[:space:]]*>#i', "\n", $sWord); //「タグ」を削除 $sWord = preg_replace('#<!--[\s\S]*?-->#', '', $sWord); $sWord = preg_replace('#<noscript[\s\S]*?</noscript>#i', '', $sWord); $sWord = preg_replace('#<script[\s\S]*?</script>#i', '', $sWord); $sWord = preg_replace('#<style[\s\S]*?</style>#i', '', $sWord); $sWord = strip_tags($sWord); //「Tab」を半角スペースに変換 $sWord = preg_replace("#\t#", ' ', $sWord); //「改行」を半角スペースに変換 $sWord = preg_replace("#\n#", ' ', $sWord); //「連続スペース」を削除 $sWord = preg_replace('/ +/', ' ', $sWord); $sWord = preg_replace('/ +/u', ' ', $sWord); $sWord = preg_replace('/( | )+/u', ' ', $sWord); $sWord = preg_replace('/ +/', ' ', $sWord); //「空行」を削除 $arrWk = explode("\n", $sWord); if (is_array($arrWk) === true) { $arrWord = array(); foreach($arrWk as $key => $row) { if (strlen($row) === 0) { continue; } $arrWord[] = $row; } $sWord = implode("\n", $arrWord); } var_dump($sWord); ?>
string(130) " 渋 谷 区 住所:〒150-8010 東京都渋谷区 ホームページ:https://www.example.jp/ 電話番号:03-1111-1111 "