文中にURLがあればそれ以降を削除する - PHPプロ!Q&A掲示板

2600

  • 0P

文中にURLがあればそれ以降を削除する

質問日時 / 2010年3月6日 23:38    回答数 / 2件

Questioner:  kanade  このエントリーをはてなブックマークに追加 

キーワード / キーワードが設定されていません

文中にURLがあればそれ以降を削除するということを行いたいです。
調べてみますとpreg_replaceで出来そうということまではわかったのですが
どの様に正規表現を行えばよいのかがわかりません。

このような事は自分で考えろと言われてしまいそうですが
教えては頂けないでしょうか?

preg_replaceの使い方はわかっております。
"検索文字","置換文字","検索する文字列"

この質問への意見の募集は締め切られ、ポイントは既に配分されました。
意見を投稿することはできますが、ポイントを受け取ることはできません。



ツリー一覧

┣A01magicflute2この意見は投稿者によって削除されました。
┣A02shimixmagicflute2さんも書かれていますが「文中にURLがあれ
┗A03kanadeお礼が遅れてしまい申し訳御座いませんでした。 ご回

回答一覧

並び替え:

A01
answerermagicflute2 [3月8日 01:33]

この意見は投稿者によって削除されました。

ツリーへ TOPへ

A02
answerershimix [3月8日 09:13]

magicflute2さんも書かれていますが「文中にURLがあればそれ以降を削除するということを行いたいです。」ということの具体的な内容を書かれた方がいいと思います。

最大限エスパーして、「http://で始まる文字列以降を削除」などであれば(URLをhttp限定というのもあり得ない仕様ですが・・)下記のような感じだと思います。(正規表現を使わなくていい場面では)正規表現を使わない方が速度的には優位じゃないかと思いますので、preg_replaceは使いませんが(汗

  1. $pos = stripos($str, 'http://');
  2. if (!($pos === false)) {
  3.   $str = substr($str, 0, $pos);
  4. }

この意見に回答する

ツリーへ TOPへ

A03
answererkanade [3月8日 09:56]

お礼が遅れてしまい申し訳御座いませんでした。
ご回答ありがとうございました。

この意見に回答する

ツリーへ TOPへ

<<質問一覧へ



Pick Up Q&A

Q
PHPのHTML埋め込み記述について
 このエントリーをはてなブックマークに追加 
A
$_POST["data"] == "男" ? $val = "checked" : $val = "" ; の意味は以下と同じです。 if($_POST["data"] == "男"){ $val = "checked; } e...

>>続きを読む

kende様のご指摘通り、三項演算子を使用する際には、コードの複雑度などを考慮する必要がありますね。書きやすさと共に可読性も追求したいところですね。

▲解説者:岡本(アシアル株式会社 教育コーディネーター兼 システムエンジニア)