preg_match_all 정규표현식을 만들었는데 잘 작동하지 않습니다.. > 질문&답변

본문 바로가기

질문&답변

DreamPHP.com에서 다루는 내용(PHP, 프로그램, 고전)에 대해서만 질문 남겨주세요.
기타 질문은 PHP스쿨의 아래 성격에 맞는 게시판에 올리면 됩니다.
리눅스/서버/설치/설정 ,  Mysql/Oracle/Query/DB ,  PHP/함수/API/프레임웍 ,  HTML/JS/CSS/jQuery/Ajax
모바일앱/하이브리드앱 ,  ASP/JSP/기타개발관련 ,  개발을 제외한 일반질문

preg_match_all 정규표현식을 만들었는데 잘 작동하지 않습니다..

페이지 정보

작성자 메시 댓글 3건 조회 267회 작성일 18-02-27 16:36

본문

▶ PHP스쿨 > Q&A > PHP관련/함수/프레임웍 - https://phpschool.com/link/qna_function/456668

참고 소스에 업로드한 HTML 파일에서

onclick 값 안에 있는 AAAA, BBBB, CCCC, DDDD 등을 추출하려고 합니다.

"/\ui\(event, '(.*)'\,/"
제가 이렇게 만들었는데 작동을 안하네요 ㅠ.ㅠ
어디가 틀린건가요?

고수님들 감사합니다.

[ ▼ 질문관련 참고 Source ]
<a href="#" class="go-site" onclick="ui(event, 'AAAA',1); return false;">
AAA새창열기
</a>
<a href="#" class="go-site" onclick="ui(event, 'BBBB',2); return false;">
BBBB새창열기
</a>
<a href="#" class="go-site" onclick="ui(event, 'CCCC',1); return false;">
CCCC새창열기
</a>
<a href="#" class="go-site" onclick="ui(event, 'DDDD',1); return false;">
DDDD새창열기
</a>
================================================================================

댓글목록

무한MP님의 댓글

무한MP 작성일

\u 가 틀렸습니다.
정규식 확인은 https://regex101.com/ 이곳을 사용해 보세요.

메시님의 댓글

메시 작성일

성공했습니다 감사합니다!

BiHon님의 댓글

BiHon 작성일

참고로 문자열과 배열 함수를 이용해 구하는 방법도 남깁니다.
단순한 문자열 처리는 정규식 사용보다 빠른 부분도 있어서 알아두면 유용합니다.

$temp = explode('onclick="ui(event, '', $text); // 고정된 시작 문자열로 분리
array_shift($temp); // 처음 배열의 값은 필요 없어서 제거
foreach ($temp as $row) { // 결과 반복
    [$code] = explode(''', $row); // 지정 문자[열]로 자른 앞 부분. PHP 버전 7.1 미만은 list($code) = …
    echo $code.'<br>';
}

회원로그인


Copyright © 1998~2019 DreamPHP.com All rights reserved.