>  기사  >  백엔드 개발  >  정규식을 사용하여 문자열 사이의 텍스트를 추출하는 방법은 무엇입니까?

정규식을 사용하여 문자열 사이의 텍스트를 추출하는 방법은 무엇입니까?

Barbara Streisand
Barbara Streisand원래의
2024-10-21 20:07:29194검색

How to Extract Text Between Strings Using Regular Expressions?

정규 표현식을 사용하여 문자열 간 텍스트 일치

텍스트 데이터로 작업할 때 미리 정의된 패턴이나 경계를 기반으로 특정 부분을 추출해야 하는 경우가 많습니다. . 이러한 작업을 위한 강력한 도구 중 하나는 정확하고 효율적인 텍스트 조작이 가능한 정규식입니다.

두 개의 특정 문자열 사이에서 텍스트를 추출하는 문제를 생각해 보세요. "Part 1. Part 2. Part 3 then more text"와 같은 문자열이 주어지면 목표는 "Part 1"과 "Part 3" 사이의 텍스트를 찾아 캡처하는 것입니다.

정규식 접근법

Python은 이 문제를 해결하는 데 사용할 수 있는 포괄적인 정규식 라이브러리를 제공합니다. 단계별 해결 방법은 다음과 같습니다.

  1. 정규식 정의(regex):

    import re
    regex = r'Part 1\.(.*?)Part 3'

    이 정규식은 다음을 지정합니다. 문자열 "Part 3" 앞에 있는 "Part 1" 뒤에 임의 개수의 문자(".*?"로 표시됨)가 오는 것을 찾습니다.

  2. 패턴 개체 만들기:

    pattern = re.compile(regex)
  3. 패턴 일치 수행:

    match_obj = pattern.search(string)
  4. 일치하는 항목 검색 텍스트:

    if match_obj:
        matched_text = match_obj.group(1)

    "group(1)" 메서드는 정규식에서 괄호 안에 캡처된 텍스트를 추출합니다.

사용 예 :

"Part 1. Part 2. Part 3 then more text"라는 문자열이 주어지면 코드 출력은 다음과 같습니다.

matched_text = '. Part 2. '

대체 접근 방식:

패턴이 여러 번 나타나는 경우 "re.search" 대신 "re.findall" 기능을 사용하여 모든 일치 목록을 얻을 수 있습니다.

match_list = re.findall(r'Part 1\.(.*?)Part 3', string)

위 내용은 정규식을 사용하여 문자열 사이의 텍스트를 추출하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.