<code>$html = <<<EOF
<a href="a.php?u=ABjhpIVC;b=5" onmousedown="return rwt(AFQjCNH3RnE94GMEJkoxp0Iy1fSbpjbbwQ)">title</a>
EOF;
$isMatched = preg_match('/<a(.*?)href="(.*?)">(.*?)<\/a>/', $html, $matches);</code>
로그인 후 복사
로그인 후 복사
이 코드를 사용하여 에서
">title
최종 출력 결과
a.php?u=ABjhpIVC ;b=까지의 콘텐츠를 최종적으로 일치시켰습니다. 5" onmousedown="return rwt(AFQjCNH3RnE94GMEJkoxp0Iy1fSbpjbbwQ)
첫 번째 큰따옴표와 두 번째 큰따옴표 사이의 내용, 즉 a 태그의 내용을 가져오고 싶습니다. href=
필요가 없습니다. 첫 번째 따옴표와 마지막 큰따옴표 사이의 내용에서 내용을 가져옵니다. 이 코드를 일치시키려면 어떻게 수정해야 합니까?
답글 내용:
<code>$html = <<<EOF
<a href="a.php?u=ABjhpIVC;b=5" onmousedown="return rwt(AFQjCNH3RnE94GMEJkoxp0Iy1fSbpjbbwQ)">title</a>
EOF;
$isMatched = preg_match('/<a(.*?)href="(.*?)">(.*?)<\/a>/', $html, $matches);</code>
로그인 후 복사
로그인 후 복사
이 코드를 사용하여 에서
">title
최종 출력 결과
a.php?u=ABjhpIVC ;b=까지의 콘텐츠를 최종적으로 일치시켰습니다. 5" onmousedown="return rwt(AFQjCNH3RnE94GMEJkoxp0Iy1fSbpjbbwQ)
첫 번째 큰따옴표와 두 번째 큰따옴표 사이의 내용, 즉 a 태그의 내용을 가져오고 싶습니다. href=
필요가 없습니다. 첫 번째 따옴표와 마지막 큰따옴표 사이의 내용에서 내용을 가져옵니다. 이 코드를 일치시키려면 어떻게 수정해야 합니까?
그럼 탐욕스러운 매칭을 이용해야죠~
/<a(.*?)href="(.*)">(.*?)</a>/
.*?
다음에 "
를 사용하면 다음 문자 "
와 일치하는 한 멈춥니다.
금지된 욕심 매칭 U를 사용
개인 경험으로는 정규식을 작성할 때 항상 Uis를 추가합니다
'/(.*)/iU', href 뒤에 속성이 있습니다. 속성이 될 수 없는 속성은 쓰지 마세요. 일치