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

テキスト処理

処理の流れ

 閲覧数:1271  投稿日: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/8/04 10:08 更新
週間人気ページランキング / 7-28 → 8-3
順位 ページタイトル抜粋 アクセス数
1 PHPコード 19
2 ログイン 6
3 可変変数(変数) カテゴリー 4
4 「指定文字」から「指定文字」までの文字列を削除 | マルチバイト文字列(テキスト処理) 3
4 多次元配列の作成 | 多次元配列(型) 3
4 Smarty(テンプレートエンジン) カテゴリー 3
4 array_multisort | タグ毎エントリー一覧 3
4 random_int | タグ毎エントリー一覧 3
4 多次元配列で「一次元目の最大値 +1 」 を返す | 配列(型) 3
4 「半角スペースもしくは全角スペースで区切られた文字列」先頭に指定文字列を付与 | 文字列(テキスト処理) 3
5 現在WebページのURLパスを第2階層まで取得 | パス 2
5 配列要素を、文字列連結して表示(元配列を上書) … foreach文+implode | 配列(型) 2
5 PHPで最後の「指定区切り文字」より後ろを取得 | 配列(型) 2
5 mb_substr | タグ毎エントリー一覧 2
5 UNIXのタイムスタンプから日付(文字列)を取得後、「現在の年月日時分秒」を表示 … getdate() | 日付および時刻関連 2
5 配列の要素に特定の値が存在すれば、要素のキーを返す array_search() | 配列(型) 2
5 t | タグ毎エントリー一覧 2
5 array_rand | タグ毎エントリー一覧 2
5 gethostbyaddr / IPアドレスからホスト名を取得 | ネットワーク 関数 2
5 mb_strimwidth | タグ毎エントリー一覧 2
2026/8/4 5:05 更新