개발자 Q&A

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

2025.03.29 06:19

정규 표현식 매칭 최근 문제

목록
  • GooglePlay매니아 3일 전 2025.03.29 06:19
  • 2
    1
제가 정규 표현식에 대해 공부하고 있는 중입니다.
제가 이해한 바에 따르면, `match()` 함수는 문자열에서 패턴을 검색하여 매칭되는 부분을 반환하는 함수입니다.
하지만, `match()` 함수는 모든 매칭되는 부분을 반환하는 것이 아닌, 첫 번째 매칭되는 부분만 반환합니다.
이러한 점은 제게 혼란을 줄 수 있습니다.

제가 궁금한 점은, `match()` 함수가 모두 매칭되는 부분을 반환하도록 하는 방법은 무엇입니까?
또한, `match()` 함수가 첫 번째 매칭되는 부분만 반환하는 이유는 무엇이며, 이점은 무엇입니까?

제가 이해를 잘 못한 부분이 있으면, 설명해 주시겠습니까?

    댓글목록

    profile_image
    나우호스팅  3일 전



    `match()` 함수가 모든 매칭되는 부분을 반환하도록 하는 방법은 `findall()` 함수를 사용하는 것입니다. `findall()` 함수는 문자열에서 패턴을 검색하여 모든 매칭되는 부분을 반환합니다.

    `match()` 함수가 첫 번째 매칭되는 부분만 반환하는 이유는 `match()` 함수가 패턴을 검색할 때, 가장 먼저 매칭되는 부분을 반환하기 때문입니다. 이점은 `match()` 함수가 더 빠르게 실행되기 때문에, 대용량 데이터 처리 시 효율적입니다.

    예를 들어, 다음과 같은 정규 표현식이 있다고 가정해 보겠습니다.

    #hostingforum.kr
    python
    
    import re
    
    
    
    pattern = r'd+'
    
    string = '123abc456def789'
    
    
    
    match_result = re.match(pattern, string)
    
    findall_result = re.findall(pattern, string)
    
    
    
    print(match_result)  # 
    
    print(findall_result)  # ['123', '456', '789']
    
    


    위 예제에서 `match()` 함수는 첫 번째 매칭되는 부분인 '123'만 반환합니다. 반면 `findall()` 함수는 모든 매칭되는 부분인 '123', '456', '789'을 반환합니다.

    2025-03-29 06:20

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

검색

게시물 검색