> 백엔드 개발 > PHP 튜토리얼 > 문자열에 특정 문자가 포함되어 있는지 확인하는 함수 strstr 및 기타 기능

문자열에 특정 문자가 포함되어 있는지 확인하는 함수 strstr 및 기타 기능

WBOY
풀어 주다: 2016-07-25 09:05:27
원래의
1544명이 탐색했습니다.
  1. /**
  2. * 다음 함수는 문자열에 다른 문자열이 포함되어 있는지 확인하는 데 사용할 수 있습니다.
  3. * 문자열에 다른 문자가 포함되어 있는지 확인하는 것은 PHP에서 매우 일반적인 작업입니다.
  4. * 이 기능들이 도움이 되셨다면 정말 기쁘겠습니다.
  5. */
  6. /**
  7. * strpos() 함수 사용
  8. * @paramknown_type $haystack
  9. * @paramknown_type $needle
  10. * @link jbxue.com
  11. */
  12. 함수 isInString1($haystack, $needle) {
  13. //$needle이 처음에 나오는 것을 방지합니다
  14. $haystack = '-_-!' . $haystack
  15. return (bool)strpos($haystack, $needle)
  16. }
  17. /**
  18. * 문자열 분할 사용
  19. * @paramknown_type $haystack
  20. * @paramknown_type $needle
  21. */
  22. function isInString2($haystack, $needle) {
  23. $array =explore($needle, $haystack)
  24. 반환 횟수($array) ) > 1;
  25. /**
  26. * 정규 표현식을 사용했습니다. 특히 $needle에 ^, $,/ 등과 같은
  27. * 특수 문자가 포함된 경우에는 권장되지 않습니다.
  28. * @paramknown_type $haystack
  29. * @param 알 수 없는_유형 $needle
  30. */
  31. function isInString3($haystack, $needle) {
  32. $pattern = '/' .
  33. return (bool)preg_match($pattern, $haystack);
  34. }
  35. /**
  36. * strpos() 함수 사용
  37. * @paramknown_type $haystack
  38. * @paramknown_type $needle
  39. */
  40. function isInString4($haystack, $needle) {
  41. return false ! = = strpos($haystack, $needle)
  42. }
  43. //Test
  44. $haystack = '나는 ITBDW입니다'
  45. $needle = 'IT'
  46. var_dump( $ haystack, $needle));
코드 복사
가장 간단한 것은 strpos($a, $b) !== false if $ If $b가 a에 존재하면 true이고, 그렇지 않으면 false입니다. !== false(또는 === false)를 사용하는 이유는 $b가 정확히 $a의 시작 부분에 있으면 함수가 int(0)를 반환하고 0은 false이지만 $b가 실제로 위치하기 때문입니다. $a에서 !==를 사용하여 유형을 결정하고 그것이 엄격히 false인지 확인하십시오. 어젯밤에 중관촌 도서관에 가서 strpos === true 를 사용해 판단한 책을 봤습니다. 이것은 매우 잘못된 것입니다. . . 오류가 발생한 도서는 "PHP 취업안내"(2012-02-26 업데이트) 107페이지입니다. 직접 판단할 수 있는 strstr(), stristr() 등과 같이 PHP에서 기본적으로 지원하는 다른 함수도 있습니다.

정의 및 사용법 strstr() 함수는 다른 문자열 내에서 한 문자열이 처음 나타나는 것을 검색합니다.

이 함수는 (일치하는 지점부터) 문자열의 나머지 부분을 반환합니다. 검색된 문자열을 찾을 수 없으면 false를 반환합니다.

문법 strstr(문자열,검색)

매개변수 설명 문자열이 필요합니다. 검색할 문자열을 지정합니다. 검색이 필요합니다. 검색할 문자열을 지정합니다. 인수가 숫자인 경우 숫자 ASCII 값과 일치하는 문자를 검색합니다.

팁 및 참고 사항 참고: 이 함수는 바이너리 안전합니다.

참고: 이 함수는 대소문자를 구분합니다. 대소문자를 구분하지 않고 검색하려면 stristr()을 사용하세요.

예 1:

  1. echo strstr("Hello world!","world")
  2. ?> >
  3. 코드 복사
//출력: world!
예제 2, 이 예에서는 ASCII 값 "o"가 나타내는 문자를 검색합니다.

echo strstr("Hello world!",111)
  • ?>
  • 코드 복사
  • //출력: o world!
    예 3:

      $email = 'admin@jbxue.com'

    1. $domain = strstr ($email, '@');
    2. echo $domain; // @jbxue.com

    3. $user = strstr($email, '@', true); / PHP 5.3.0부터

    4. echo $user; // admin
    5. ?> 인쇄
    6. 코드 복사

    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.'
      ';
    9. echo $city_ch_arr_item;
    10. $s_city=$city_ch_arr_item; 🎜>//도시를 찾을 수 없으면 지방을 찾을 수 있는지 확인하세요. 때로는 다음과 같은 상황이 있을 수 있습니다. 광동성의 만리장성 광대역은 모두 성의 수도에 속합니다
    11. elseif(strstr( $area_ga,"허베이" )!==false){
    12. $s_city="스자좡";
    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="난닝"; 🎜>}elseif(strstr($area_ga,"Zhejiang")!==false){
    21. $s_city="항저우";
    22. }elseif(strstr($area_ga,"Jiangsu")!==false) {
    23. $s_city=" 난징"
    24. }elseif(strstr($area_ga,"Shandong")!==false){
    25. $s_city="지난"
    26. }elseif(strstr( $area_ga,"안후이")! ==false){
    27. $s_city="허페이";
    28. }elseif(strstr($area_ga,"Hunan")!==false){
    29. $s_city= "창사";
    30. } elseif(strstr($area_ga,"쓰촨")!==false){
    31. $s_city="
    32. }elseif(strstr($area_ga,"운난") !==false){
    33. $s_city="쿤밍";
    34. }elseif(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,"Xinjiang")!==false){
    41. $s_city="우루무치"
    42. }elseif(strstr($area_ga) ,"몽골")!== false){
    43. $s_city="후허하오터";
    44. }elseif(strstr($area_ga,"헤이룽장")!==false){
    45. $s_city="하얼빈 ";
    46. }elseif( strstr($area_ga,"랴오닝")!==false){
    47. $s_city="심양";
    48. }elseif(strstr($area_ga,"길림")!= =false){
    49. $ s_city="창춘"
    50. }elseif(strstr($area_ga,"허난")!==false){
    51. $s_city="정저우"
    52. }elseif (strstr($area_ga,"후베이성")!==false){
    53. $s_city="우한";
    54. }elseif(strstr($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. $s_city="인촨 ";
    62. }elseif(strstr( $area_ga,"하이난")!==false){
    63. $s_city="하이커우";
    64. }elseif(strstr($area_ga,"장시")!= =false){
    65. $s_city= "난창"
    66. }elseif(strstr($area_ga,"마카오")!==false){
    67. $s_city="마카오"
    68. }
    69. //둘 다 없으면 기본 로컬 머신 등 광주 표시
    70. else{
    71. $s_city="Guangzhou"
    72. }

    73. 코드 복사
    74. 위 코드: 그중 city.dat에는 다음과 유사한 형식의 일부 도시가 포함되어 있습니다. 광저우 | 후이저우 | 마오밍 | 샤오저우 | |Taishan|Kaiping|Heshan|Enping|Lianjiang|Wuchuan|Gaozhou|Huazhou|Gaoyao|Sihui|Xingning|Lufeng|Yangchun|Yingde|Lianzhou|Puning|Luoding|Beijing|Tianjin | Shanghai | Tumushuk | Hami | 타청 | 푸캉 | 우중 | | 후허하오터 | 우하이 | 오르도스 | 만저우리|야케시|잘란툰|에렌하오터|

      참고자료

      1. echo strstr('aaaaaaaaaaboaaaaaaaaaaboxccccccccccbcccccccccccccc','box')."
        n
      2. // 출력 boxccccccccccbcccccccccccccc
      3. // 이전 b
      4. echo strstr('aaaaaaAbaaa aaaa aaaaaaaaboxccccccccccccboxcccccccccccc','box')"
        n";// 출력 boxccccccccccccboxcccccccccc
      5. // 두 개의 키워드가 있는 경우 첫 번째 중지가 발생합니다.
      6. echo strstr('Subscrtibe our to free newsletter about New Freew to','to')."
        n "; 🎜>//New Freew에 대한 무료 뉴스레터를
      7. ?>
      8. 코드 복사
      로 출력
    원천:php.cn
    본 웹사이트의 성명
    본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
    인기 튜토리얼
    더>
    최신 다운로드
    더>
    웹 효과
    웹사이트 소스 코드
    웹사이트 자료
    프론트엔드 템플릿