文章の改行を削除する。既存改行やスペース等の区切りは全て1つの半角スペースへ変更

テキスト処理

処理の流れ

 閲覧数:1261  投稿日:2017-04-28  更新日:2017-04-28  

1.対象文字列全体の前後空白を削除
2.改行 → 半角スペース
3.全角スペース → 半角スペース
4.連続する半角スペース → 1つの半角スペース
5.。半角スペース → 。


コード

$string = "                  無保証
                  ★★は提供するソフトウエアについて、第1章総則の定めのとおり、エラーやバグ、論理的誤り、不具合、中断その他の瑕疵(かし)がないこと、信頼性、正確性、完全性、有効性について一切保証しておりません。
                    ソフトウエアは明示または黙示の有無にかかわらず、★★がその提供時において保有する状態で提供するものであり、特定の目的への適合性、有用性(有益性)、セキュリティ、権原および非侵害性について一切保証しておりません。
                
                
              
                
                
                  APIに関する特約事項
                  ★★が提供するAPIをご利用になる場合、以下の特約事項が適用されます。
                    お客様が★★が提供するAPIを使用してソフトウエアを開発する場合には、「クレジット表示ガイドライン」と「クレジット配置ルール」を順守しなければなりません。
                    お客様は、開発ソフトウエアに、★★が定める開発ソフトウエアを特定するためのアプリケーションID等を付さなければなりません。
                    アプリケーションID等の情報は、お客様が開発した開発ソフトウエアの使用に際し★★に送信されることになります。";

$string = trim($string); //文字列全体の前後空白を削除
$string = str_replace(array("\r", "\n"), '', $string); //改行 → 半角スペース
$string = preg_replace('/ /', ' ', $string); //全角スペース → 半角スペース
$string = preg_replace('/\s+/', ' ', $string); //連続する半角スペース → 1つの半角スペース
$string = str_replace('。 ', '。', $string); //。半角スペース → 半角スペース

//出力
echo $string;



結果

無保証 ★★は提供するソフトウエアについて、第1章総則の定めのとおり、エラーやバグ、論理的誤り、不具合、中断その他の瑕疵(かし)がないこと、信頼性、正確性、完全性、有効性について一切保証しておりません。ソフトウエアは明示または黙示の有無にかかわらず、★★がその提供時において保有する状態で提供するものであり、特定の目的への適合性、有用性(有益性)、セキュリティ、権原および非侵害性について一切保証しておりません。APIに関する特約事項 ★★が提供するAPIをご利用になる場合、以下の特約事項が適用されます。お客様が★★が提供するAPIを使用してソフトウエアを開発する場合には、「クレジット表示ガイドライン」と「クレジット配置ルール」を順守しなければなりません。お客様は、開発ソフトウエアに、★★が定める開発ソフトウエアを特定するためのアプリケーションID等を付さなければなりません。アプリケーションID等の情報は、お客様が開発した開発ソフトウエアの使用に際し★★に送信されることになります。






フォームより入力された改行を含むテキストを、改行維持したまま出力



類似度ページランキング
順位 ページタイトル抜粋
1 文章の改行を削除する。既存改行やスペース等の区切りは全て1つの半角スペースへ変更 78
2 文字列に含まれるすべての半角空白と全角空白を削除 34
3 「半角スペースもしくは全角スペースで区切られた文字列」先頭に指定文字列を付与 28
4 文字列の改行文字を削除 27
5 マークダウンで書かれたURLを(エスケープ処理するのではなく)削除する 24
6 文字列を「複数の区切り文字」で配列へ変換 / explode使用案。却下 24
7 文字列を「複数の区切り文字」で配列へ変換 / preg_split使用案。採用 23
8 多次元配列キーを、多次元配列内にある「特定キーの値」へ変更 20
9 全てのクッキーを表示 20
10 16進数カラーコードをRGBA形式へ変更 20
11 'xxxx_数字'キーの数だけ、数字毎に分けて二次元配列へ格納(キーのサフィックスは削除する) / array_walk 20
12 'xxxx_数字'キーの数だけ、数字毎に分けて二次元配列へ格納後、キーのサフィックスを削除する / array_filter 20
13 複数の指定文字列を削除 20
14 PHPで最後の「指定区切り文字」より後ろを取得 19
15 全ての PHP エラーを表示 19
16 変数名の一部だけを可変にする 19
17 「最後に位置している指定文字列」より後の文字列を取得 18
18 (データベースなどから取得した)多次元配列の構造を変換して一次元配列を返す 18
19 ファイルが存在するかどうか調べてからinclude_onceを実行します。 18
20 変数に含まれるすべての要素、 あるいはオブジェクトに含まれる何かの数を数える 18
2026/7/15 6:03 更新
週間人気ページランキング / 7-8 → 7-14
順位 ページタイトル抜粋 アクセス数
1 PHPコード 16
2 time | タグ毎エントリー一覧 4
2 ログイン 4
3 文字列に含まれるすべての半角空白と全角空白を削除 | テキスト処理 3
3 foreachの中でswitch文 | 配列(型) 3
4 gethostbyname | タグ毎エントリー一覧 2
5 指定文字列より前を取得 | 文字列(テキスト処理) 1
5 対象文字列の内、「最初の指定文字列以前」と「それ以降の文字列」を取得する | 文字列(テキスト処理) 1
5 変数 カテゴリー 1
5 マテリアルカラーをランダムに3色取得 / 重複なし | 色 1
5 array_filter | タグ毎エントリー一覧 1
5 連想配列定義と同時に、後ろに既存配列を単純結合 | 配列(型) 1
5 (データベースなどから取得した)多次元配列の値と、一次元配列を比較して、「一致」及び「増減」を返す | 配列(型) 1
5 ctype_digit | タグ毎エントリー一覧 1
5 substr | タグ毎エントリー一覧 1
5 全ての PHP エラーを表示 | エラー 1
5 compact | タグ毎エントリー一覧 1
5 文章の改行を削除する。既存改行やスペース等の区切りは全て1つの半角スペースへ変更 | テキスト処理 1
5 foreach | タグ毎エントリー一覧 1
5 配列の空要素を削除 / array_diff()で空配列と比較し配列の差分を返す | 配列(型) 1
2026/7/15 5:05 更新