/* * 规则: 优先选择最左端的匹配结果 * 示例: 用/fat|cat|belly|your/ 来匹配字符窜'the dragging belly indicated that your cat is too fat.'结果是什么? * 结果: 是 belly * 原因: 尽管fat在所有可能选项中列子最前头,但是它们都不是最先匹配的结果,所以不会被选择,其他的可能性也都会进行尝试匹配 */ preg_match('/fat|cat|belly|your/','the dragging belly indicated that your cat is too fat.',$b); //如果用preg_match_all()这个函数可以把素有情况匹配出来 为什么说贪婪匹配效率低 原因可能在这里了 //var_dump($b); /* * 规则: 标准量词是匹配优先的 * 示例: 用subject:(.*) 来匹配 'subject:wyxwuyongxin@126.com' * 变化1: subject:(.*).* * 变化2: subject:(.*)(.*) * 结果: wyxwuyongxin@26.com * 变化1结果: subject:wyxwuyongxin@26.com wyxwuyongxin@26.com * 变化2结果: subject:wyxwuyongxin@26.com $1 wyxwuyongxin@26.com $2 为空 * 变化1原因: .*是优先匹配的可以捕获$1的值为 wyxwuyongxin@26.com 第一个.*会霸占整个标题的文本,而不给第二个.*留下任 *何字符 * 第二个字符失败也补要紧,因为 .*不匹配任何字符也能成功. * 变化2原因: 先来先服务, 后边没有必须匹配字符 所以不会强迫之前优先的部分释放某些字符 */ preg_match('/subject:(.*)/','subject:wyxwuyongxin@26.com',$c); preg_match('/subject:(.*).*/','subject:wyxwuyongxin@26.com',$c); preg_match('/subject:(.*)(.*)/','subject:wyxwuyongxin@26.com',$c); //var_dump($c); /* * 示例: 用/^.*([0-9][0-9])/ 匹配about 24 long * 结果: about 24 $1捕获 24 * 原因: (过度优先匹配)[0-9]是必须匹配,在尝试匹配行末的时候回失败,这样会通知.* "你占用的太多了,交出一些,这样的我也 * 能匹配"优先组建首先会匹配尽可能多的字符,但是为了整个表达式,他通常要释放掉一些字符 遇到第一个[0-9]要求释放'g' 但是 * 还是不能匹配还要交还 下一个n o l 直到'4' 第二个[0-9] 在要求释放掉一个字符 这样就得到了 $1 24 */ preg_match('/^.*([0-9][0-9])/','about 24 long',$d); //var_dump($d); /* * 用/.*[0-9]+/ 来匹配'copyright 2003.' * 结果: copyright 2003 $1捕获 3 * 原因: 释放掉3和点号 之后3能由[0-9]匹配 但是[0-9]是由+修饰的还要尽可能多的匹配 但是遇到了'.'找不到其他可以匹配的字符 * 没有必须匹配元素 所以不会被迫交出 0 (先来先服务原则) 所以$1 最终的值是 3 */ preg_match('/.*([0-9]+)/','copyright 2003.',$str); var_dump($str);
성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사
<garden> : 정원 재배 - 완전한 돌연변이 가이드
3 몇 주 전ByDDD
<gum> : Bubble Gum Simulator Infinity- 로얄 키를 얻고 사용하는 방법
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
KB5055612 수정 방법 Windows 10에 설치되지 않습니까?
3 몇 주 전ByDDD
Nordhold : Fusion System, 설명
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
Mandragora : 마녀 트리의 속삭임 - Grappling Hook 잠금 해제 방법
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

VSCode Windows 64비트 다운로드
Microsoft에서 출시한 강력한 무료 IDE 편집기

WebStorm Mac 버전
유용한 JavaScript 개발 도구

mPDF
mPDF는 UTF-8로 인코딩된 HTML에서 PDF 파일을 생성할 수 있는 PHP 라이브러리입니다. 원저자인 Ian Back은 자신의 웹 사이트에서 "즉시" PDF 파일을 출력하고 다양한 언어를 처리하기 위해 mPDF를 작성했습니다. HTML2FPDF와 같은 원본 스크립트보다 유니코드 글꼴을 사용할 때 속도가 느리고 더 큰 파일을 생성하지만 CSS 스타일 등을 지원하고 많은 개선 사항이 있습니다. RTL(아랍어, 히브리어), CJK(중국어, 일본어, 한국어)를 포함한 거의 모든 언어를 지원합니다. 중첩된 블록 수준 요소(예: P, DIV)를 지원합니다.

Eclipse용 SAP NetWeaver 서버 어댑터
Eclipse를 SAP NetWeaver 애플리케이션 서버와 통합합니다.

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기