PHPのmb_substr()関数で文字列の一部を抽出する方法をわかりやすく解説
PHPでは、mb_substr()関数を使うことで、指定した文字列から任意の部分(部分文字列)を取り出すことができます。これはマルチバイト文字に対応した安全なsubstr()であり、文字数に基づいて動作します。位置は文字列の先頭から数えられ、最初の文字が「0」、2番目の文字が「1」というように扱われます。日本語などのマルチバイト文字列でも文字化けせずに処理できるのが大きな特徴です。
構文
string mb_substr(str $string, int $start, int $length, str $encoding)
パラメータ
このPHP関数は、$string、$start、$length、$encoding の4つの引数を受け取ります。
$string(対象の文字列)
部分文字列を抽出する元となる文字列を指定します。
$string = mb_substr("Welcome to the online tutorials!", 5, 10, "UTF-8");
$start(開始位置)
抽出を開始する位置を指定します。0以上の値の場合、先頭の文字が「0」として扱われます。たとえば「abcefg」という文字列なら、位置0は「a」、位置1は「b」に対応します。負の値を指定した場合は、文字列の末尾から数えた位置が開始点となります。
$length(長さ)
文字列から取り出す最大文字数を指定します。以下の例では、5番目の文字から10文字分を取得することになります。
// 5番目の文字から10文字分を取得(5, 10, "UTF-8")
$encoding(文字エンコーディング)
文字エンコーディングを指定します。省略した場合やnullの場合は、内部文字エンコーディングの値が使用されます。日本語を扱う際は「UTF-8」などを明示的に指定しておくと安心です。
戻り値
startとlengthの各パラメータに基づいて、指定された文字列から選択された部分を返します。
使用例
<?php
// mb_substr関数は文字列の選択された部分を返します
$string = mb_substr("Welcome to the online tutorials!", 5, 10, "UTF-8");
// 取得した文字列を大文字に変換
$string = mb_convert_case($string, MB_CASE_UPPER, "UTF-8");
// 出力結果は「ME TO THE」
echo "$string";
?>
出力結果
ME TO THE
-
JavaでtoString()メソッドを使って数値を文字列に変換する方法
toString()メソッドは、Objectクラスが持つ重要なメソッドの一つで、オブジェクトの文字列表現(テキスト表現)を返すために使用されます。ObjectクラスのtoString()メソッドは、「クラス名+『@』記号+オブジェクトのハッシュコード」という形式の文字列を返します(例:java.lang.String;@36f72f09)。 このtoString()メソッドは、数値の文字列表現を取得するためにも利用できます。特に、複数の変数に格納された数値を組み合わせて1つの文字列を作成したい場合に便利です。数値をいったん文字列に変換してから連結することで、結合済みの文字列や整形された文字列を
-
Pythonで文字列から最小のアルファベット文字を取得する方法
Pythonでは、組み込み関数 min() を使うことで、文字列に含まれる最小のアルファベット文字を簡単に取得できます。文字列をそのまま引数として渡すだけで、文字コード(Unicode)の順序にもとづいて最も小さい文字が返されます。基本的な使い方>>> min(helloworld) d >>> min(TAJMAHAL) A最初の例では、helloworld の中で最も文字コードが小さい d が返されています。2つ目の例では、大文字のみの文字列 TAJMAHAL から A が取得されています。仕組みと注意点min() は各文字をUnicodeのコードポイン