【PHP】文字列から指定文字までを抽出する

▼文字列から指定の文字列までを抽出する方法です。

これは、”。”を指定文字にしています。

<?php

//文字列

$mes = “あいうえお。かきくけこ。”;

//文字列から指定の文字が最初に出現する位置を取得
$leng = mb_strpos($mes,”。”) + 1;  //(”。”を含めたいので+1する)

// 文字数を指定して抽出する関数

//mb_substr(文字列,開始位置,文字数);
echo mb_substr($mes,0,$leng);

?>

出力:

あいうえお。

▼指定文字と指定文字の間を抽出する方法

<?php

//文字列

$mes = “あいうえお。かきくけこ。”;

//文字列から指定の文字が最初に出現する位置を取得
$start_leng = mb_strpos($mes,”い”) ;  //(”い”を開始位置)

$end_leng = mb_strpos($mes,”か”) + 1 – $start_leng ;  //(”か”を終了位置。開始位置からの文字数取得)

// 文字数を指定して抽出する関数

//mb_substr(文字列,開始位置,文字数);
echo mb_substr($mes, $start_leng , $end_leng );

?>

出力:

いうえお。か

 

※mb_ナントカ系の関数は、文字コードに気をつけてください。

元の文書がEUCなどで文字コード指定をしないと計算が狂います。

これはUTF-8環境での対応です。

kaito

WebデザインやWebシステムを作成しています。SEO関連の話しもしていきます。

シェアする

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

コメントする

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください