No.1ベストアンサー
- 回答日時:
正規表現を使いましょう。
$pat = "/<!--start-->(.+)<!--end-->/ms";
if(preg_match($pat, $data1, $reg)){
$data2 = $reg[1];
}
http://jp2.php.net/preg_match
この回答への補足
残り2%分
(1)パターンの前後の改行の残ります。(改行のみの一行)
そこで、
$pat = "/<!--start-->\n(.+)<!--end-->\n/ms";
と指定しましたが、合致しませんでした。
(2)根本的にことですが、
パターンで合致した、
$data2 = $reg[1];
「preg_match ($pattern, $subject ,$matches)」の説明を読みました。
「matches を指定した場合、検索結果が代入されます。
$matches[0] にはパターン全体にマッチしたテキストが代入され、
$matches[1] には 1 番目ののキャプチャ用サブパターンにマッチした 文字列が代入され、
といったようになります。 」
とありますが、
$data2 = $reg[0]でも、同じ結果でした。
もう少し、具体的に示していただけると幸いです。
taketan_mydns_jp さん
98%、解決しました。
助かりました。
本当にありがとうございました。
残りの2%分は上の「この回答への補足」に書きました。
No.2
- 回答日時:
#1です
1)の解決にはなりませんが、改行については\nの他、\rが入る事もありますので、私の場合は設定しない事の方が多いです。取得後、trim()で空白も含めて前後切り取っています。改行関連はパターン修飾子によって挙動が変わるので、私も苦手です(笑。
> $data2 = $reg[0]でも、同じ結果でした。
そんなはずは無いと思います。
$reg[0] = "<!--start-->.内容.<!--end-->";
$reg[1] = ".内容.";
となっていると思いますが。
print_r($reg);
としてみて確認してみてください。
taketan_mydns_jp さん
そうですね。
難しく考えずに、trimで、後処理すれば済みますね。
今回は、本当に助かりました。
今、作っているPHPがあるので、
また、別の質問しますが、
その時は、よろしくお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# プログラミングの授業の課題です 1 2023/01/17 22:15
- Visual Basic(VBA) excelVBAについて。 4 2022/11/21 16:15
- Excel(エクセル) excelVBAについて。 8 2022/12/11 13:47
- Visual Basic(VBA) Sheet2の日付をキーにオートフィルターで2023年1月のデータを抽出し、Sheet3へ書き出すた 2 2023/03/06 23:57
- Excel(エクセル) ExcelVBAについて。 2 2022/12/10 20:08
- Visual Basic(VBA) excelVBAについて。 1 2022/11/30 06:16
- Excel(エクセル) 【VBA】A列にある連続したデータの1番下に文字列を入力したい 1 2023/01/28 04:40
- Perl Perlでファイルの末尾から指定文字列を検索してファイルに吐き出したい 4 2022/04/04 16:15
- その他(プログラミング・Web制作) Fortranでの出力ファイル 2 2023/03/21 21:25
- Visual Basic(VBA) VBA初心者です 検索した数字の行に色をつける 5 2023/02/13 14:22
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBAのコマンドボタンの文字列の...
-
ソースコードの1行が長いとき...
-
エスケープ文字の復帰(¥r)と...
-
JAVA System.out.println の ...
-
texのchapterが改行される
-
COBOLの改行
-
C++で空Enterの入力を判...
-
エクセルVBA 文字列領域が不足...
-
テキストファイルから改行コー...
-
文字列とWriteFile関数について
-
エディットボックスで改行
-
テキストボックス行の桁数を制...
-
POSTで改行コードを受け渡すには
-
Excel VBAからBeckyを起動して...
-
fgetsとsscanf
-
改行について
-
JavaMail,本文中の改行について
-
ExcelVBAでメールを作成してメ...
-
【VB6】項目内に改行コードを含...
-
ファイルの内容をstrcpyを使っ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAのコマンドボタンの文字列の...
-
ソースコードの1行が長いとき...
-
エスケープ文字の復帰(¥r)と...
-
COBOLの改行
-
改行について
-
最終行の改行について
-
C++で空Enterの入力を判...
-
【VBA】エクセルで最後の不要な...
-
jsp 改行コードで改行させて表...
-
C++でのCRLFについて
-
ファイルから読み取った改行文...
-
テキストファイルから改行コー...
-
ExcelVBAでメールを作成してメ...
-
awkで改行を除いて文字列を抜き...
-
エクセルVBA 文字列領域が不足...
-
VBAでCSVをExcelに取り込む時に...
-
コンボボックスの項目中に改行を
-
JavaDoc コメントの改行について
-
Excel VBAからBeckyを起動して...
-
改行を読み飛ばす
おすすめ情報