ホームページ  >  記事  >  バックエンド開発  >  PHPを使用して文字列内の特定の文字を検索する方法

PHPを使用して文字列内の特定の文字を検索する方法

不言
不言オリジナル
2019-01-03 17:17:473347ブラウズ

phpには文字列を取得する関数としてstrstr関数、strpos関数、preg_match関数の3つがありますが、今回はこれら3つの関数を使って文字列を取得する方法を紹介します。

PHPを使用して文字列内の特定の文字を検索する方法

#1. strstr 関数

strstr 関数は、対象の文字列から検索対象の文字列を検索します。 strstr 関数は文字列が存在するかどうかを確認するためにのみ使用され、次のように使用されます。

strstr(目标字符串,要搜索的字符串)

たとえば、strstr("abcdefg", "cde") を実行すると、abcdefg から cde を検索します。検索により該当する文字列が存在する場合は「対象文字列」を返し、存在しない場合はfalseを返します。

大文字と小文字を区別せずに検索したい場合は、「stristr 関数」を使用します。

2. strpos 関数

strpos 関数は、まず対象文字列の中から取得したい文字列の位置を検索する関数です。 strstr関数よりも詳細に文字列の位置を把握できるため、その部分の文字列を分割するのに使用されます。

strpos関数の使い方は以下の通りです。

strpos(目标字符串,要搜索的字符串的位置)

たとえば、strpos("asbabdabcasf", "abc") を実行すると、数値 6 が返されます。これは、abc 文字列の 1 つを指します。そうでない場合、戻り値は false です。

位置は 0 から始まるため、strpos("asbabdabcasf", "asb") を検索すると値 0 が返されることに注意してください。

3. preg_match 関数

preg_match 関数は、対象文字列から正規表現パターン文字列を検索します。

この関数は、strstr 関数よりも複雑な文字列パターンを検索する場合に使用できます。 preg_match 関数は次のように使用します。

返回值= preg_match(/正则表达式模式/,目标字符串)

ターゲット文字列内に正規表現パターンに一致する文字列がある場合は 1 を返し、それ以外の場合は戻り値 0 を返します。

最後に具体的な例を見てみましょう

コードは次のとおりです

<?php
$a = "asfasbcasdfnaosdfaabc";
$b = "abc";
if( strstr($a, $b) ){
  echo "$a中包含字符串“abc”。\n";
}else{
  echo "$a中不包含字符串“abc”。\n";
}
?>

以上がPHPを使用して文字列内の特定の文字を検索する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。