KANTENNA.COM

Solarized

HOME > WEBプログラム覚書 > 指定の文字列が最初に出現する位置を取得

指定の文字列が最初に出現する位置を取得

指定の文字列が最初に出現する位置を取得するにはsrtpos(文字列, 検索文字列)を利用する。ただしマルチバイト対応ではないのでマルチバイト文字の場合mb_strpos(文字列, 検索文字列)を利用する。

サンプル

PHP
  1.  <?php
  2.  $hoge = "Age of Empires 2 The Conquerors Expansion";
  3.  $mb_hoge = "エイジオブエインパイアはリアルタイム ストラテジーゲームです。";
  4.  
  5.  print "Theが出てくる位置は「". strpos($hoge, "The"). "」文字目です。<br />";
  6.  print "ゲームが出てくる位置は「". mb_strpos($mb_hoge, "ゲーム"). "」文字目です。";
  7.  ?>

実行結果

Theが出てくる位置は「17」文字目です。
ゲームが出てくる位置は「25」文字目です。

ちなみに文字列の後ろから検索するにはstrrpos(文字列, 検索文字列)、mb_strrpos(文字列, 検索文字列)を使う。

文字列が見つからない場合の返り値

PHP
  1.  <?php
  2.  $hoge = "Age of Empires 2 The Conquerors Expansion";
  3.  $mb_hoge = "エイジオブエインパイアはリアルタイム ストラテジーゲームです。";
  4.  
  5.  var_dump(strrpos($hoge, "HOGE"));
  6.  echo "<br />";
  7.  var_dump(mb_strrpos($mb_hoge, "ホゲ"));
  8.  ?>

実行結果

bool(false)
bool(false)
プログラミングPHP 第2版
作者:Peter MacIntyre | 価格:¥ 3,990

トラックバック(0)

コメント

コメントする
Name
Email Address
URL
TIME LINE
2012
02.03

[jQuery]closest()とparents()

今から16年前Netscapeブラウザのソースコードの公開方法の会議の中で、初めてオープンソースという言葉が使われた今日、 みなさんいかがお過ごしでしょうか。

今回の投稿はそれとは関係のないjQueryのparents()とclosest()が 似てたので何が違うのか試した時のメモです。

2012
02.01

[jQuery Mobile]初期化イベントメモ

jQuery Mobileは読み込まれてから

mobileinit -> pagebeforecreate -> pagecreate -> pageinit

の順番でイベントが発生する。

2012
02.01

[WordPress]管理画面のフッタのフィルタとアクション。

時間も時間なので、あまり使用頻度の高くない微妙なネタを。

会員制サイトなどで不特定多数の人にログインさせる場合、フッタのバージョン情報は隠しておきたかったり、 こじゃれたメッセージを表示したいときとか使うアクションとフィルタ。

2012
01.28

[WordPress] ブログの情報を取得する方法とノーキャッシュ疑惑

ブログのget_bloginfo()で取れないデータが必要な場合に使うもの。

2012
01.26

[jQuery Mobile]ダイアログ

jQuery Mobileにおけるダイアログの扱いはウインドウではなくページ。 なので通常のページと同様に扱える。ダイアログウインドウを出す。じゃなくダイアログページに遷移する。的な。

2012
01.25

[Ubuntu11.10]Ubuntuのインストール後の設定

インストール完了後の環境構築。PC起動時いちいちBIOSからブートドライブ選んで ブートするのかと思ってたら起動時にOS選択画面が出てくる。

すばらしいですね。

2012
01.24
2012
01.23

MinGW+Mintty+Git

MinGW+Mintty+Gitをやろうとして失敗に終わった。このエントリーには収穫できるものはありません。

2012
01.21

[PHP]共有サーバーユーザーのためのPEARインストール方法

共有サーバーでは自由にPEARのパッケージがインストールできないので、 プロジェクトローカルに設置することになりますが、以前httpベースのものを使ってみたんですけど、 やたら重くて使い物にならなかったので、僕は普通にFTPでアップするようにしてます。

ってことでプロジェクトローカルへのPEARのインストール方法。