ずっと悩んでなかなか解決できません。特定タグを子要素を含め取得したいのですが...
例えば以下のタグがあるとして
<div id="1">a<div id="2">b<div id="3">cc</div>b</div>a</div>
特定タグを子要素を含め取得して、それを配列に格納。配列の中は
[0] <div id="1">a<div id="2">b<div id="3">cc</div>b</div>a</div>
[1] <div id="2">b<div id="3">cc</div>b</div>
[2] <div id="3">cc</div>
このような配列の結果がでる動作方法はどうやればいいのでしょうか?
正規表現を使ってやろうとしてますが、自分のレベルでは難しくてできません。
よろしくお願いします。
No.2ベストアンサー
- 回答日時:
<?php
$s = '<div id="1">a<div id="2">b<div id="3">cc</div>b</div>a</div>';
while(preg_match('/<(\w+)[^>]*>(.*)<\/\1>/', $s, $m)) {
$result[] = $m[0];
$s = $m[2];
}
var_dump($result);
?>
こんな感じでどうでしょう。
正規表現一発じゃないですが。
No.1
- 回答日時:
xpathを使うと簡単にできます。
使い方は参考URLを見て下さい。ただしphp-xmlが必要です。レンタルサーバで入ってなければ使えません。
ちなみにそういうのをDOM操作(あるいはDOM解析)と言いまして、正規表現でも出来ないことないけど汎用的ではありませんのでxpathのようにDOM操作に適したライブラリや環境を使うと良いでしょう。
PHPに拘らなければJavascriptのjQueryもお勧め。
あと、ID値に数値のみだと何かと面倒なので頭にアルファベットを付けるなりしたほうが良いと思います。
参考URL:http://logic.moo.jp/memo.php/archive/723
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- HTML・CSS html/cssで要素が出てこなくて困ってます 1 2022/12/31 16:59
- Ruby No route matches [GET] "/posts/5/destroy" 1 2022/03/24 13:00
- JavaScript Javascriptが機能せず原因が分からないので教えて頂きたいです 3 2023/06/04 14:50
- JavaScript 【Javascript】ボタンクリックで2つのclassに対し、それぞれ別のclassを追加したい 1 2022/07/29 20:52
- JavaScript Javascript初心者|jQueryの.val()で値を取得し複数の要素を連結させる方法知りたい 2 2022/06/02 12:06
- JavaScript 画像の表示位置 3 2022/12/23 08:25
- HTML・CSS PCサイズで赤い画像2つと、青い画像2つがそれぞれ横に2つずつ並んでいるのですが、これをスマホサイズ 5 2022/04/11 12:01
- JavaScript javascriptで移動ボタンを押した際に遷移するボタンを追記したい 1 2022/11/29 03:02
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/07 21:04
- HTML・CSS CSS のみのタブ切り替えについて 1 2023/01/11 16:47
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBAでの素数の求め方
-
Excel VBAでのIE操作でクリック...
-
最初の文字後ろのスペースを大...
-
Ajaxで文字列を表示したいです。
-
htmlの文字が縦書きになる
-
widthやheightの数値に単位(px...
-
【ヒトの神秘】美男美女から何...
-
<h1>、<h2>と<p><div>の行間を...
-
改行ほどは行かないけど、若干...
-
CSS:overflow要素の印刷について
-
リンクを知らせる手のマークが...
-
<ul>~</ul>が二つ続くと間に改...
-
div領域をウインドウサイズに合...
-
<ul><li></li></ul>にするメリ...
-
inputタグでサーバにデータを送...
-
liタグの中に<p>タグやら<dl>を...
-
textareaの幅を画面と合わせたい
-
サイトにjQueryが使用されてい...
-
レスポンシブWebデザインでリン...
-
divとpの使いわけ
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ASP.NETでプレーンなページに文...
-
cnt <= (others => '0'); の意...
-
pythonでのカーソル移動がずれる
-
Excel VBAでのIE操作でクリック...
-
質問です。 新規登録ボタンが全...
-
safariで見るとページ上部に余...
-
CSSで、何故か、「float」が上...
-
vbaでieを操作しようとしていま...
-
VBAでの素数の求め方
-
css リンクの色が全部変わって...
-
SEO 検索エンジンについて
-
初歩的ですが・・・
-
CSSセクレター 子孫のみに適用...
-
DIVの入れ子で、FireFoxだとレ...
-
Ajaxで文字列を表示したいです。
-
ワードプレスで何度消しても空...
-
RubyのHTMLパーサーで複数のタ...
-
最初の文字後ろのスペースを大...
-
検索結果がツリー状に表示され...
-
IEとFireFoxの表示の違いで悩ん...
おすすめ情報