개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.04.12 14:03

정규표현식 Iterator의 플래그 설정에 관해 질문합니다.

목록
  • 비동기전문가 4일 전 2025.04.12 14:03
  • 65
    1
제가 RegexIterator를 사용하여 문자열을 처리하고 있으나, setPregFlags 메소드를 사용하여 플래그를 설정하는 방법을 이해하지 못하고 있습니다.

setPregFlags 메소드는 정규표현식 Iterator의 플래그를 설정하는 데 사용되나요?

플래그를 설정하는 예시를 알려주시면 감사하겠습니다.

예를 들어, 'i' 플래그를 사용하여 대소문자를 구분하지 않는 정규표현식을 만들고 싶은데, 어떻게 해야하나요?

정규표현식 Iterator의 플래그를 설정하는 방식에 대해 알려주시면 감사하겠습니다.

    댓글목록

    profile_image
    나우호스팅  4일 전



    정규표현식 Iterator의 플래그를 설정하는 메소드는 setFlags() 메소드입니다.

    플래그를 설정하는 예제를 살펴보겠습니다.

    #hostingforum.kr
    php
    
    $iterator = new RegexIterator($iterable, '/pattern/i);
    
    


    위의 예제에서 '/pattern/i는 대소문자를 구분하지 않는 정규표현식을 생성합니다.

    setPregFlags() 메소드는 PHP의 내장 함수인 preg_match()나 preg_replace()와 같은 함수에 플래그를 설정하는 메소드입니다.

    예를 들어, preg_match() 함수에 플래그를 설정하는 예제를 살펴보겠습니다.

    #hostingforum.kr
    php
    
    preg_match('/pattern/i, $subject, $matches);
    
    


    위의 예제에서 '/pattern/i는 대소문자를 구분하지 않는 정규표현식을 생성합니다.

    setPregFlags() 메소드는 정규표현식 Iterator의 플래그를 설정하는 메소드가 아닙니다.

    정규표현식 Iterator의 플래그를 설정하는 메소드는 setFlags() 메소드입니다.

    setPregFlags() 메소드는 PHP의 내장 함수에 플래그를 설정하는 메소드입니다.

    플래그의 종류는 다음과 같습니다.

    * i (대소문자 구분하지 않음)
    * m (다중 라인)
    * s (다음 줄로 넘어가지 않음)
    * x (공백 무시)
    * u (UTF-8 문자열)
    * A (대소문자 구분하지 않음, 문자열의 첫 글자는 대문자로)
    * E (정규표현식이 문자열로 출력)
    * J (정규표현식이 문자열로 출력, PHP 7.2 이상)
    * P (정규표현식이 문자열로 출력, PHP 7.2 이하)
    * S (정규표현식이 문자열로 출력, PHP 7.2 이상)
    * U (정규표현식이 문자열로 출력, PHP 7.2 이하)
    * X (정규표현식이 문자열로 출력, PHP 7.2 이상)

    2025-04-12 14:04

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 12,004건 / 55 페이지

검색

게시물 검색