선택적 공백 정규식: 속성 값에서 공백 무시
프로그래밍에서는 문자열에 선택적 공백이 포함된 인스턴스를 처리해야 하는 시나리오가 있습니다. . 데이터를 정확하게 추출하기 위해 정규식을 작성할 때 이는 어려울 수 있습니다.
다음 코드를 고려하세요.
# Get Image data preg_match('#<a href="(.*?)" title="(.*?)"><img alt="(.*?)" src="(.*?)"[\s*]width="150"[\s*]height="(.*?)"></a>#', $data, $imagematch); $image = $imagematch[4];
이 코드는 HTML 마크업에서 이미지의 src 속성을 추출합니다. 그러나
<code class="html"><a href="/wiki/File:Sky1.png" title="File:Sky1.png"><img alt="Sky1.png" src="http://media-mcw.cursecdn.com/thumb/5/56/Sky1.png/150px-Sky1.png"width="150" height="84"></a></code>
또는
<code class="html"><a href="/wiki/File:TallGrass.gif" title="File:TallGrass.gif"><img alt="TallGrass.gif" src="http://media-mcw.cursecdn.com/3/34/TallGrass.gif" width="150"height="150"></a></code>
과 같은 특정 속성 사이에 공백이 없는 경우는 처리하지 못합니다. 이 문제를 해결하려면 선택적 공백 정규식을 사용할 수 있습니다. 이를 통해 문자 사이의 공백을 무시할 수 있습니다. 방법은 다음과 같습니다.
#<a href\s?="(.*?)" title\s?="(.*?)"><img alt\s?="(.*?)" src\s?="(.*?)"[\s*]width\s?="150"[\s*]height\s?="(.*?)"></a>#
업데이트된 정규식에서는
위 내용은 정확한 데이터 추출을 위해 정규식에서 선택적 공백을 처리하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!