>  기사  >  백엔드 개발  >  Python re.compile 함수란 무엇입니까?

Python re.compile 함수란 무엇입니까?

乌拉乌拉~
乌拉乌拉~원래의
2018-08-20 17:57:1210041검색

이 기사에서는 Python re.compile에 대해 알아 보겠습니다. 일부 친구는 Python 프로그래밍 언어를 처음 접했을 수도 있고 이 측면에 대해 특별한 이해가 없을 수도 있지만 다음 기사는 중요하지 않습니다. Python의 컴파일 함수에 대한 관련 지식을 소개합니다.

re.compile 함수

compile 함수는 정규식을 컴파일하고 match() 및 search() 두 함수에서 사용할 정규식(패턴) 개체를 생성하는 데 사용됩니다.

구문 형식은 다음과 같습니다.

re.compile(pattern[, flags])

매개변수:

pattern: 문자열 형식의 정규 표현식

flags: 선택 사항, 대소문자 무시, 여러 줄 모드 등과 같은 일치 패턴 표시

re.I 대소문자 무시

re.L 현재 환경에 따라 특수 문자 집합 w, W, b, B, s, S를 나타냅니다.

re.M 여러 줄 모드

re. S는 입니다. 줄 바꿈을 포함한 모든 문자(. 줄 바꿈 제외)

re.U는 특수 문자 세트 w, W, b, B, d, D, s, S를 나타내며 유니코드 문자 속성 데이터베이스

re를 사용합니다. .X for 가독성을 높이기 위해 #

다음의 공백과 주석을 무시합니다. 예는 다음과 같습니다:

>>>import re
>>> pattern = re.compile(r'\d+')                    # 用于匹配至少一个数字
>>> m = pattern.match('one12twothree34four')        # 查找头部,没有匹配
>>> print m
None
>>> m = pattern.match('one12twothree34four', 2, 10) # 从'e'的位置开始匹配,没有匹配
>>> print m
None
>>> m = pattern.match('one12twothree34four', 3, 10) # 从'1'的位置开始匹配,正好匹配
>>> print m                                         # 返回一个 Match 对象
<_sre.SRE_Match object at 0x10a42aac0>
>>> m.group(0)   # 可省略 0
&#39;12&#39;
>>> m.start(0)   # 可省略 0
3
>>> m.end(0)     # 可省略 0
5
>>> m.span(0)    # 可省略 0
(3, 5)

위에서 일치가 성공하면 Match 개체가 반환됩니다. 여기서:

1.group( [group1, …]) 메서드가 사용됩니다. 하나 이상의 그룹 일치 문자열을 얻으려면 일치하는 전체 하위 문자열을 얻으려면 group() 또는 group(0)을 직접 사용할 수 있습니다.

2.start([group] ) 메서드는 전체 문자열에서 하위 문자열의 시작 위치(하위 문자열의 첫 번째 문자 인덱스)와 일치하는 그룹을 얻는 데 사용됩니다. 매개 변수의 기본값은

3.end([group])입니다. 메서드는 전체 문자열에서 하위 문자열과 일치하는 그룹을 얻는 데 사용됩니다. 문자열의 끝 위치(하위 문자열의 마지막 문자 인덱스 + 1), 매개 변수의 기본값은

4.span( [그룹]) 메서드는 (start(group), end(group))을 반환합니다.

위 내용은 이 글에 설명된 내용이 전부입니다. 이 글은 python의 re.compile 함수에 대한 관련 지식을 주로 소개하는 내용이므로 위 내용을 이해하시기 바랍니다. 이 글에서 제가 설명한 내용이 여러분에게 도움이 되고 파이썬을 더 쉽게 배울 수 있기를 바랍니다.

더 많은 관련 지식을 알고 싶으시면 PHP 중국어 홈페이지의 Python tutorial 칼럼을 방문해 주세요.

위 내용은 Python re.compile 함수란 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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