정규식
PHP에는 두 세트의 정규식 함수 라이브러리가 있습니다. 두 세트의 기능은 비슷하지만 실행 효율성이 약간 다릅니다.
한 세트는 PCRE(Perl Compatible Regular Expression) 라이브러리에서 제공됩니다. . 접두사 "preg_"로 명명된 함수
POSIX(Portable Operating System Interface of Unix) 확장(PHP 기본값)에서 제공되는 집합입니다. 접두사 "ereg_"가 붙은 함수 사용
PHP에서 정규식에는 세 가지 함수가 있습니다.
일치는 문자열에서 정보를 추출하는 데에도 자주 사용됩니다.
일치하는 텍스트를 새 텍스트로 바꿉니다.
문자열을 더 작은 정보 덩어리로 나눕니다.
정규식에는 하나 이상의 원자가 포함됩니다.
Atom(영어 문자 등 일반 문자)
메타 문자(특수 기능을 가진 문자)
패턴 수정 문자(정규식 의미에 대한 수정)
Atom(Atom)
단일 문자 및 숫자 , 예: a~z, A~Z, 0~9.
(ABC)와 같은 패턴 단위는 여러 개의 원자로 구성된 큰 원자로 이해될 수 있습니다.
[ABC]와 같은 원자 테이블.
재사용 패턴 단위(예: \1)
일반적인 이스케이프 문자(예: d, D, w)
이스케이프 메타 문자(예: *,)
POSIX 정규식
POSIX 정규식 표현식은 유닉스의 휴대용 운영체제 인터페이스(Portable Operating System Interface of Unix)라고 하는데, 이는 유닉스의 휴대용 운영체제 구현 인터페이스를 의미한다.
POSIX 정규 표현식을 구성하는 것은 수학 표현식을 만드는 것과 같습니다. 즉, 다양한 메타 문자와 연산자를 사용하여 작은 표현식을 결합하여 더 큰 표현식을 만드는 것입니다.
메타문자(Meta-character)
메타문자는 정규식을 구성하는데 사용되는 특별한 의미를 지닌 문자이다.정규 표현식에 메타 문자 자체를 포함하려면 앞에 ""를 붙여 이스케이프 처리해야 합니다.
메타 문자 설명
* 선행 원자와 일치
0회, 1회 이상 1회 일치 이전 원자
0회 이상 일치?
0회 또는 1회 | [1-9]|[a-b]|[A-Z]와 같은 두 개 이상의 선택 항목과 일치하며 모든 일치가 true임
^ 문자열 시작 부분의 원자와 일치합니다. 예를 들어, abscd===^afdgfgf는
$와 일치합니다. 문자열 끝 부분의 원자와 일치합니다. 예: dasdsv===v$
[] 일치 방법 괄호 안의 모든 원자 예를 들어 s===[dsadas]
[^] 대괄호 안의 원자를 제외한 모든 문자와 일치합니다. 예를 들어 aaaaa===[dddd]
{m} 이는 이전 원자가 정확히 m번 나타난다
{m,n}는 이전 원자가 m번 이상 나타난다는 뜻이고, n>m 이상이라는 뜻이다.
{m,}은 이전 원자가 m번 이상 나타난다는 뜻이다. times
( ) 전체는 원자
를 나타냅니다. 개행
^ $를 제외한 모든 문자와 일치합니다. 이 두 문자를 함께 구분 기호라고 합니다.
abd===^abc$ 이 방법으로만 일치할 수 있습니다.
패턴 매칭 순서
순서 메타문자 설명
1 () 패턴 단위
2 ? * {} 반복 일치
3 ^$ 경계 제한
4 | 패턴 선택
POSIX 정규 표현식 함수
ereg() 및 eregi()
ereg_replace() 및 eregi_replace()
Split() 및 Spliti()
ereg() 및 eregi()ereg() 문자열 일치 함수, eregi()는 ereg() 함수의 크기 무시 버전입니다.
구문 형식: if (!ereg( '^[^./][^/]*$', $userfile))//일치하지 않는 형식 출력 die
{
die('잘못된 파일 이름입니다!')
}
ereg_replace() 및 eregi_replace(대소문자 무시) 교체
string eregi_replace("정규식", "대상 교체 문자", "교체 대상")
구문 형식: $string = "테스트입니다";
echo str_replace(" is", " was", $string);
echo ereg_replace("( )is", "\1was", $string);\1 은 첫 번째 전체
echo ereg_replace("(( )is)", "\2was", $string);\2는 두 번째 전체를 상속합니다.
split() 및 Spliti(대소문자 무시)는 정규 표현식을 사용하여 문자를 대체합니다. 문자열을 다음으로 분할합니다. array
list: 배열의 값에 일부 변수 할당
구문 형식: $date = "04/30/1973"
list($month, $day, $year) = 분할 ('[/.-]', $date);//세 변수의 해당 형식 나열//어떤 형식으로 분할할지 누구를 분할할지
echo "월: $month; 일: $day; 연도: $year
n";
출력 결과 월: 04; 일: 30; 연도: 1973
현재 1/2 페이지 12다음 페이지
위 내용은 정규식의 임의 문자에 대한 소개입니다. PHP 학습 정규식 코스웨어의 1/2페이지에는 정규식의 임의 문자에 대한 내용이 포함되어 있어 PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.