No.5ベストアンサー
- 回答日時:
$data1 = preg_replace("\n\n+", "\n", $data2);
preg_replaceの第一引数はデリミタが必要なのです。
$data1 = preg_replace("/\n\n+/", "\n", $data2);
$data1 = preg_replace("@\n\n+@", "\n", $data2);
こんな感じ。
str_replaceはデリミタがいらないですね。
$data1 = preg_replace("\n\n", "\n", $data2);
こんな感じ。でもこれだと完全じゃないのでpregのほうのコードが正確ですね。
No.6
- 回答日時:
ま、2つ以上なら{2,}とかでよさそうですけどね、
$data1 = preg_replace("/\n{2,}/", "\n", $data2);
そもそも1つ以上の\nを\nに変えれるのでもおかしくはないです
$data1 = preg_replace("/\n+/", "\n", $data2);
No.4
- 回答日時:
> str_replaceは正規表現を引数にとらないのでは?
うひゃー、失礼しました m(_ _)m
str_replaceをpreg_replaceに読み替えてください。
bgbgさん、sakusaker7さん、
早速の回答ありがとうござすます。
しかし、
$data1 = preg_replace("\n\n+", "\n", $data2);
を実行したら、
Warning: preg_replace() [function.preg-replace]: No ending delimiter '+' found in ・・・
というエラーが出ました。
No.3
- 回答日時:
> $data1 = str_replace("\n\n+", "\n", $data2);
str_replaceは正規表現を引数にとらないのでは?
PHP: str_replace - Manual
http://www.php.net/str_replace
PHP: preg_replace - Manual
http://www.php.net/manual/ja/function.preg-repla …
<?php
$str = "aaabbbccc\n";
$s1 = str_replace("b+", "", $str);
$s2 = preg_replace("/b+/", "", $str);
print_r($s1);
print_r($s2);
aaabbbccc
aaaccc
No.2
- 回答日時:
2つ以上改行が連続している部分を1つに置き換えればいいので
$data1 = str_replace("\n\n+", "\n", $data2);
となります。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) pandasでまとめてインデックスを削除するにはどうすればいいですか? たとえば、以下のプログラムで 1 2022/07/31 23:09
- Excel(エクセル) Vba エクセルマクロで、 A列の、A1セルからA10セルに空白のある行を削除する、のは Range 3 2022/11/05 17:44
- Visual Basic(VBA) vbaエクセルマクロ RemoveDuplicatesについて RemoveDuplicatesを使 3 2023/02/28 01:13
- Visual Basic(VBA) vbaエクセルマクロ RemoveDuplicatesについて RemoveDuplicatesを使 1 2023/02/27 22:21
- Excel(エクセル) エクセル 関数 指定の繰り返しの回数 以降(以前)を削除するには、 2 2022/04/24 10:29
- Visual Basic(VBA) 複数csvを横に追加していくマクロについて 2 2023/04/25 09:19
- Java 動かなくなったのでJavaソースを手直しお願いします。 2 2022/04/30 05:35
- C言語・C++・C# C#テキストボックスの文字を配列にいれてその後表示する 4 2022/07/17 04:47
- その他(プログラミング・Web制作) Fortranでの出力ファイル 2 2023/03/21 21:25
- Excel(エクセル) Excelの関数で実現可能か知りたいです 5 2023/08/06 08:58
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ソースコードの1行が長いとき...
-
VBAのコマンドボタンの文字列の...
-
エスケープ文字の復帰(¥r)と...
-
COBOLの改行
-
コンボボックスの項目中に改行を
-
ラベル(スタティックテキスト)...
-
文の改行
-
JavaMail,本文中の改行について
-
C++で空Enterの入力を判...
-
改行について
-
改行コード(CR/LF)の設...
-
delphi でのコード上でTab を入...
-
最終行の改行について
-
改行コードが半角スペースにな...
-
エクセルVBA 文字列領域が不足...
-
C# DataGridViewのセルを改行禁...
-
グレープシティのSPREAD...
-
VB6でブラウザのページソースを...
-
C++例外の回避方法
-
【VB6】項目内に改行コードを含...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAのコマンドボタンの文字列の...
-
ソースコードの1行が長いとき...
-
エスケープ文字の復帰(¥r)と...
-
COBOLの改行
-
C++で空Enterの入力を判...
-
改行について
-
ファイルから読み取った改行文...
-
jsp 改行コードで改行させて表...
-
C++でのCRLFについて
-
エクセルVBA 文字列領域が不足...
-
テキストファイルから改行コー...
-
JavaDoc コメントの改行について
-
最終行の改行について
-
JavaMail,本文中の改行について
-
【VBA】エクセルで最後の不要な...
-
文の改行
-
VBAでCSVをExcelに取り込む時に...
-
ラベル(スタティックテキスト)...
-
テキストボックス行の桁数を制...
-
改行コード(CR/LF)の設...
おすすめ情報