
任意の文字列で囲まれていない任意の文字列を置換したいです。
たとえば、『 [[ 』と『 ]] 』で囲まれていない『http://hogehoge/』を『<a href="http://hogehoge/">http://hogehoge/</a>』に置き換えるにはどうすればいいのでしょうか。
具体的には下記の【置換前】のテキストを【置換後】のような感じにしたいです。
【置換前】
http://hogehoge/
[[http://hogehoge/]]
http://hogehoge/
http://hogehoge/ [[http://hogehoge/]]
【置換後】
<a href="http://hogehoge/">http://hogehoge/</a>
[[http://hogehoge/]]
<a href="http://hogehoge/">http://hogehoge/</a>
<a href="http://hogehoge/">http://hogehoge/</a> [[http://hogehoge/]]
preg_replaceかereg_replaceのどちらかで例を挙げてもらえるとありがたいです。ご教示お願いします。
No.1ベストアンサー
- 回答日時:
[[ と ]] で囲まれている中に目的の文字列以外のもの(ブラケットの直後と直前に空白とか)が
入ってこないということでいいなら、
<?php
$str = "http://hogehoge/
[[http://hogehoge/]]
http://hogehoge/
http://hogehoge/ [[http://hogehoge/]]
";
print($str);
$newstr = preg_replace('@(?<!\[\[)http://hogehoge/(?!\]\])@', '<a href="$0">$0</a>', $str);
print($newstr);
こんなんで。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PostgreSQL 【PostgreSQL】行の値の並びを変えるには 1 2023/03/21 16:46
- AJAX JavascriptからPHPへのAjax通信でnullが返ってくる 3 2022/08/03 22:00
- PHP PHPプログラムの間違い 1 2022/10/06 14:33
- PHP php ログイン 1 2022/11/01 00:24
- Visual Basic(VBA) Excel VBA 教えてください。 VBA初心者です。 詳しい方がいましたら教えてください。 下記 3 2023/04/25 11:22
- Visual Basic(VBA) Excel VBAでAA(BBB) → BBB.AA に置換したい 2 2022/10/30 13:59
- Visual Basic(VBA) EXCEL VBA 単語置き換え について質問です ブック名 ぶぶぶ シート名 ししし セル V3〜 3 2023/03/08 01:41
- PHP アコーディオンPHPが上手くいかない 3 2022/07/15 16:29
- Visual Basic(VBA) 入力ボックスが繰り返しポップアップして止まらない。 下記コードでファイル名の変更をしたいのですが、変 1 2022/09/08 11:27
- その他(コンピューター・テクノロジー) 正規表現の置換で一部の文字列をそのまま残したい 2 2022/05/03 19:19
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
○分から○時間○分に変換
-
VBAのコマンドボタンの文字列の...
-
文字の入力で横バー上段、中断...
-
ソースコードの1行が長いとき...
-
エクセルのCOUNTIFが正しくカウ...
-
Excel関数「COUNTIF」で”文字”...
-
メッセージボックスで1025文字...
-
ファイルから読み取った改行文...
-
文字化け変換方法
-
エクセルVBAで改行のやりかた
-
2つ以上の連続する空白文字を除去
-
、"(ダブルクォーテーション)...
-
コンボボックスの項目中に改行を
-
カンマの含まれる文字列の数値...
-
VBAでCSVをExcelに取り込む時に...
-
XMLのタグ名の禁則文字
-
1行ごとに取得して、その改行...
-
全角括弧と全角読点の間隔を狭...
-
エクセルCSVの落とし穴?
-
vodafoneが言う事ききません
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ダブルコーテーション(
-
文字列の置換をCStringで(C++)
-
文字列の括弧について(初心者)
-
c# string型の変数に、ダブルク...
-
VBSで"をエスケープする文字は?
-
○分から○時間○分に変換
-
入力文字に\\マークが入ってい...
-
mcryptで英数字(12未満)のみに...
-
マクロ関数 #define の効果は何...
-
正規表現
-
VB.NET 文字コード
-
PHPでCSVを出力する際のセルに...
-
PHPでjavascriptを書き出すとき...
-
ヒットする初回のみ置換する方法
-
文字列のアスタリスク置換
-
php 正規表現で、\\マークを取...
-
正規表現について
-
PHP VS Java (パフォーマン...
-
sedでの最短一致の書き方
-
正規表現での記述方法
おすすめ情報