PHP는 여러 줄의 정규식 분석을 일치시킵니다. 필요한 친구가 참조할 수 있으며 주로 수집 및 교체에 사용됩니다.
<table>
<tr><td>aaaa</td></tr>
<tr><td>bbbb</td></tr>
<tr><td>cccc</td></tr>
<tr><td>dddd</td></tr>
</table>
로그인 후 복사
PHP 정규식을 사용하여 이와 같은 텍스트를 일치시키는 방법은 무엇입니까? ?
내 초기 생각:
패턴: "/
[.n]*?
"(틀림)
아이디어: "." 문자가 있는 경우 "[.n]" 조합을 사용하여 모든 문자(개행 문자 포함)와 일치하도록 만들지만 예상치 못한 상황이 발생합니다. 비극, 결과는 아무것도 아닙니다!
고민 끝에 또 하나 썼습니다
패턴: "/
(.|n)*?
" (가능합니다)
"[]" 바꾸기 "()"로 바꾸고 "|"를 사용하여 or를 선택하면 끝입니다. (헷갈리는데 왜 "[]"도 선택 방법으로 사용할 수 없나요???)
거기 인터넷에 있는 답변이기도 합니다.
PATTEN : "/
.*?
/is" (매우 간결하고 편리합니다. 이 방법에 동의합니다.)
추첨: "[]"도 선택할 수 없는 이유는 무엇입니까? ? ? 알고 계신다면 꼭 알려주세요...
[]의 "."는 다음과 같습니다. 일반 설명을 주의 깊게 읽어보세요.
줄 바꿈에 대해서는 패턴 수정자 사용을 고려하세요.
s (PCRE_DOTALL)
이 수정자가 설정되면 패턴의 점 메타 문자는 이 수정자를 포함한 모든 문자와 일치합니다. 도트 메타 문자는 개행 문자와 일치하지 않습니다.
[]에는 일부 범위 또는 조합이 포함되어 있습니다.
lz "/
[.]*?
/is"를 시도해 보면 알 수 있습니다. 🎜>()도 있습니다. 매우 강력합니다
여러 줄을 일치시키는 PHP의 정규식 분석과 관련된 더 많은 기사를 보려면 PHP 중국어 웹사이트를 주목하세요!