[解決済み] 文字列から改行(文字がない!)を削除する方法は?
質問
これは重複しているように見えるかもしれませんが、そうではないので安心してください。私は自分の問題に対する答えを探すためにSOとその他のウェブを検索しましたが、結局同じ不十分な"解決策"を何度も見つけました。とにかく、ここにあります。
テキストエリアからのユーザー入力をMySQLデータベースに保存しています(WordPress環境内ですが、この問題には関係ないはずです)。この入力は、後でDBから取得され、サイトのバックエンドでアドミンに表示されます。問題は、ユーザーが改行されたテキストを送信する(つまり、Enterキーを押す)ときに発生します。
文字列のサンプルは次のようなものです。
Dear friends, I just wanted so Hello. How are you guys? I'm fine, thanks!
Greetings,
Bill
文字列の中に行末文字("⑅n", "⑅r" など)がありません。
を使っています。
nl2br()
を追加し、HTML出力を生成していますが、それだけでは十分ではありません。すると、その結果は
Dear friends, I just wanted so Hello. How are you guys? I'm fine, thanks!<br />
<br />
Greetings,<br />
Bill
というのは、私が理解する限りでは、期待されるのは
nl2br()
というのは、タグを挿入するのであって、そもそも改行を置き換えるのではないのでは?
しかし、私が必要とするフォーマットは次のようなものです。
Dear friends, I just wanted so Hello. How are you guys? I'm fine, thanks!<br /><br />Greetings,<br />Bill
もし、文字列の中に" \n" のようなEOL文字があった場合、私はその文字列を次のどちらかで叩きます。
str_replace()
または
preg_replace()
を使えばいいのですが、そもそも文字がない場合、どちらの関数にどんな針を送り込めばいいのか、さっぱりわかりません。
DBの関連フィールドに手動でアクセスし、改行するたびにバックスペースを押せば、後でその文字列でやりたいことができるのですが、これがうまくいきません。だから、上記のフォーマットが必要なのだと思います。
解決方法は?
改行とキャリッジリターンをすべて削除するpregに置き換えることができるはずです。そのコードは
preg_replace( "/\r|\n/", "", $yourString );
たとえ
\n
が表示されない場合、キャリッジリターンが表示されるなら、そこには見えない文字があるのです。preg置換を使えば、このような文字が検出され、修正されるはずです。
関連
-
[解決済み】mysqli_result クラスのオブジェクトを文字列に変換できない
-
[解決済み】In_arrayが動作しない。
-
[解決済み] textareaのresizableプロパティを無効にするにはどうしたらよいですか?
-
[解決済み] ページを再読み込みせずにURLを変更するにはどうすればよいですか?
-
[解決済み] ある文字列が特定の単語を含んでいるかどうかを確認するにはどうすればよいですか?
-
[解決済み] YouTube APIからYouTubeビデオのサムネイルを取得する方法を教えてください。
-
[解決済み] Pythonで改行(行継続)をするにはどうしたらいいですか?
-
[解決済み] inline/inline-block要素間のスペースを削除するにはどうすればよいですか?
-
[解決済み] Pythonで文字列から特定の文字を削除する
-
[解決済み】JavaScriptで文字列の出現箇所をすべて置換する方法
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】mysqli_result クラスのオブジェクトを文字列に変換できない
-
[解決済み] SAJAXは死んだか?何を置き換えるべきか?
-
[解決済み】pdo - 非オブジェクトのメンバー関数prepare()への呼び出し【重複】。
-
[解決済み】警告:mysql_fetch_array()はパラメータ1がリソースであることを期待、ブール値は[重複]で与えられる]
-
[解決済み】Wordpressの子テーマのstyle.cssが効かない。
-
[解決済み】書き込みコンテキストでメソッドの戻り値を使用することができない
-
[解決済み] mysqli_fetch_assoc() は、パラメータ 1 が mysqli_result であることを期待し、boolean が与えられる [重複] 。
-
[解決済み] PHP と mod_fcgid: handle_request_ipc 関数で ap_pass_brigade が失敗する。
-
[解決済み] SSLエラー SSL3_GET_SERVER_CERTIFICATE:証明書の検証に失敗しました。
-
[解決済み] libapache2-mod-php7 パッケージの場所がわからない