php 정규식 질문입니다
본문
<div name="work" id="work_one" class="mainBox">
위와 같은 예시에서 div의 속성 값인 name, id, class의 속성값을 정규식을 이용해서 가져오려고 합니다.
즉, work, work_one, mainBox를 정규식을 이용해서 결과값으로 받으려고 하는데, 정규식으로 계속 헤메다가 결국 막혀서 질문 올려요.
부탁드립니다
답변 5
$html = '<div name="work" id="work_one" class="mainBox">';
preg_match_all('# ([a-z\-]+)=#', $html, $matches);
print_r($matches[1]);
↓
Array
(
[0] => name
[1] => id
[2] => class
)
// name 안 값 찾기
(<div[^>]+name\s*=\s*[\"']?([^>\"']+)[\"']?[^>]*>)
// id 값찾기
(<div[^>]+id\s*=\s*[\"']?([^>\"']+)[\"']?[^>]*>)
// class 값 찾기
(<div[^>]+class\s*=\s*[\"']?([^>\"']+)[\"']?[^>]*>)
참조하세요. php버전
<?php
$data = '<div name="work" id="work_one" class="mainBox">';
$pattern = "#<div name=\"(.+)\" id=\"(.+)\" class=\"(.+)\">#i";
preg_match($pattern, $data, $m);
//print_r($m);
echo "name : $m[1]\n";
echo "id : $m[2]\n";
echo "class : $m[3]\n";
동일한 질문
phpschool에 있네용
https://phpschool.com/gnuboard4/bbs/board.php?bo_table=qna_function&wr_id=477582
답변을 작성하시기 전에 로그인 해주세요.