ホームページ  >  記事  >  バックエンド開発  >  文字列に特定の文字が含まれているかどうかを調べる関数 strstr など

文字列に特定の文字が含まれているかどうかを調べる関数 strstr など

WBOY
WBOYオリジナル
2016-07-25 09:05:271533ブラウズ
  1. /**
  2. * 次の関数は、文字列に別の文字が含まれているかどうかを判断するために使用できます。
  3. * 文字列に他の文字が含まれているかどうかを判断するのは、PHP では非常に一般的な操作です。
  4. * これらの機能があなたのお役に立てれば、とても嬉しいです。
  5. */
  6. /**
  7. * strpos() 関数を使用します
  8. * @paramunknown_type $haystack
  9. * @paramunknown_type $needle
  10. * @link jbxue.com
  11. */
  12. function isInString1($haystack, $needle) {
  13. //$needle が先頭に来ないようにします
  14. $ haystack = '-_-!'
  15. return (bool)strpos($haystack, $needle)
  16. function isInString2($haystack, $needle); $ array =explode($needle, $haystack);
  17. return count($array) > 1;
  18. /**
  19. * 文字列分割を使用します
  20. * @paramknown_type $haystack
  21. * @paramknown_type $needle
  22. */
  23. function isInString3($haystack, $needle) {
  24. $pattern = ' / ' . $needle . '/';
  25. return (bool)preg_match($pattern, $haystack);
  26. function isInString4($haystack, $needle); = = strpos($haystack, $needle);
  27. //テスト
  28. $haystack = '私は ITBDW';
  29. var_dump(isInString1($haystack, $needle));
  30. コードをコピーします
  31. 最も単純なものはこれだと思います strpos($a, $b) !== false $a に $b が存在する場合は true、そうでない場合は false です。 !== false (または === false) を使用する理由は、$b が $a の先頭に正確にある場合、関数は int(0) を返し、0 は false になりますが、$b は実際に位置しているためです。 $a では、!== を使用して型を決定し、それが厳密に false であることを確認します。昨夜中関村書籍館に行ったところ、strpos === true を判定に使用している本がありましたが、これは非常に間違っています。 。 。 誤りのある書籍は『PHP就職ガイド』(2012-02-26更新)の107ページです。 strstr()、stristr() など、PHP によってネイティブにサポートされている他の関数もあり、これらは直接判断できます。
  32. 定義と使い方 strstr() 関数は、ある文字列が別の文字列内で最初に出現する箇所を検索します。
  33. この関数は、文字列の残りの部分 (一致する点から) を返します。検索された文字列が見つからない場合は false を返します。
  34. 文法 strstr(文字列,検索)
  35. パラメータの説明 文字列が必要です。検索する文字列を指定します。 検索が必要です。検索する文字列を指定します。引数が数値の場合、ASCII 数値に一致する文字を検索します。
  36. ヒントとメモ 注: この関数はバイナリセーフです。
  37. 注: この関数では大文字と小文字が区別されます。大文字と小文字を区別しない検索の場合は、stristr() を使用します。
  38. 例 1:
echo strstr("Hello world!","world")

?>

コードをコピー

//出力: world!

例 2、この例では、ASCII 値「o」で表される文字を検索します。

echo strstr("Hello world!",111)
?>
  1. コードをコピー
  2. //出力: o world!
例 3:

$email = 'admin@jbxue.com';

$domain = strstr($email, '@'); // @ を出力します。 jbxue.com

$user = strstr($email, '@', true); // PHP 5.3.0 以降

    echo $user // admin
  1. ?> ;/p>
コードをコピー

  1. $city_str=fopen(cgi_path."/data/weather/city.dat","r");

  2. $city_ch=fread($city_str,filesize) (cgi_path."/data/weather/city.dat"));
  3. $city_ch_arr=explode("|",$city_ch)
  4. //都市と一致する場合
  5. if(strstr($area_ga,"city") )) {
  6. Foreach ($ City_ch_arr as $ City_CH_ARR_ITEM) {
  7. IF (@Strstr ($ Area_ga, $ City_CH_ARR_ITEM)) {
  8. echo $ Area_ga. '& LT; Cecho $ City_ch_arr_ITEM; City_ch_arr_item ;
  9. }
  10. }
  11. }
  12. //都市が見つからない場合は、次のような状況が発生することがあります: 広東省万里の長城ブロードバンドはすべて省都に属します
  13. elseif(strstr($area_ga,"河北")!==false){
  14. $s_city="石家荘";
  15. }elseif(strstr($area_ga,"福建")!==false){
  16. $s_city="福州";
  17. }elseif(strstr($area_ga,"台湾")!==false){
  18. $s_city="台北";
  19. }elseif(strstr($area_ga,"香港")!==false){
  20. $s_city="香港";
  21. }elseif(strstr($area_ga,"広西チワン族自治区")!==false){
  22. $s_city="南寧";
  23. }elseif(strstr($area_ga,"広西チワン族自治区")!= =false){
  24. $s_city= "杭州";
  25. }elseif(strstr($area_ga,"江蘇")!==false){
  26. $s_city="南京"
  27. }elseif(strstr($area_ga,"山東"; ")!==false){
  28. $s_city="済南";
  29. }elseif(strstr($area_ga,"安徽")!==false){
  30. $s_city="合肥";
  31. }elseif(strstr($ area_ga,"湖南")!= =false){
  32. $s_city="長沙";
  33. }elseif(strstr($area_ga,"四川")!==false){
  34. $s_city="成都"; (strstr($area_ga,"雲南" ")!==false){
  35. $s_city="昆明";
  36. }elseif(strstr($area_ga,"広東")!==false){
  37. $s_city="広州";
  38. }elseif(strstr($ area_ga,"貴州")!==false){
  39. $s_city="貴陽";
  40. }elseif(strstr($area_ga,"チベット")!==false){
  41. $ s_city="ラサ";
  42. }elseif (strstr($area_ga,"新疆")!==false){
  43. $s_city="ウルムチ";
  44. }elseif(strstr($area_ga,"モンゴル") ){
  45. $s_city="フフホト" ;
  46. }elseif(strstr($area_ga,"黒龍江省")!==false){
  47. $s_city="ハルビン" ; !==false){
  48. $s_city ="瀋陽";
  49. }elseif(strstr($area_ga,"吉林")!==false){
  50. $s_city="長春"
  51. }elseif(strstr($area_ga, "河南")!==false) {
  52. $s_city="鄭州";
  53. }elseif(strstr($area_ga,"湖北")!==false){
  54. $s_city="武漢"; ($area_ga,"山西")! ==false){
  55. $s_city="太原";
  56. }elseif(strstr($area_ga,"陝西")!==false){
  57. $s_city="西安" ;
  58. }elseif(strstr($area_ga,"甘粛省")!==false){
  59. $s_city="蘭州"
  60. }elseif(strstr($area_ga,"寧夏")!==false){ ="銀川";
  61. }elseif(strstr( $area_ga,"海南")!==false){
  62. $s_city="海口";
  63. }elseif(strstr($area_ga,"江西") {
  64. $s_city="南昌";
  65. } elseif(strstr($area_ga,"マカオ")!==false){
  66. $s_city="マカオ";
  67. // 存在しない場合は、広州になります。ローカルマシンなど、デフォルトで表示されます
  68. else{
  69. $s_city="広州
  70. }

  71. コードをコピーします
  72. 上記のコード: その中に、city.dat には次のような形式のいくつかの都市が含まれています。 | 汕州 | 汕江 | 汕江 | 汕城 |グ | ナン・シオン|泰山|開平|鶴山|恩平|連江|武川|高州|高要|四会|興寧|陸豊|陽春|営徳|林州|浦寧|北京|天津|カラマイ| | アラル | トゥムシュク | カシュガル | 呉市 | | フフホト | 烏海 | 通寮 | バヤンヌール | 満州里 | ジャラントゥン | エルグン | シリンホト | ウランホト |

    参考

      echo strstr('aaaaaaaaaaboaaaaaaaaaaboxccccccccccbcccccccccccccc','box')."
      n";//出力ボックスcccccccccbcccccccccccc
    1. //内のボックスと完全に一致しますbを変更せずに真ん中そして stop
    2. echo strstr('aaaaaaAbaaa aaaa aaaaaaaaaboxccccccccccccboxcccccccccc','box')."
      n";
    3. //出力 boxccccccccccccboxcccccccccccc
    4. //キーワードが 2 つある場合、最初の停止が発生します
    5. echo strstr (' New Freew to','to' に関する無料ニュースレターを購読します。"
      n"
    6. //New Freew に関する無料ニュースレターに出力します
    7. ?>
    8. コードをコピー
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。