- - PR -
XMLをsubstringしたいです。
1
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2004-06-08 17:59
いつもお世話になっております。
環境はどこでもできると思いまして省略させていただきます。 xmlのあるタグのデータの一部をとりたいですが そのデータの中のタグごととりたいです。 </a>があるところまでとりたいです。 でもまず<text>タグに<img>タグがあるのが問題です。DOWNLOAD(例文の)という文字をとりたくても<img>タグは抜きではとれるんです。DOWNLOADしかとれませんでした。 「<img src="/icon.gif"/><a href="/e.pdf">DOWNLOAD」がとりたいです。 XMLは初めての挑戦なので難しいです。 ずっと悩んでも解決できなくて 投稿させていただきました。 とんでもない質問かもしれませんがよろしくお願いします。 例: a.xml <text> <img src="/icon.gif"/> <a href="/e.pdf">DOWNLOAD</a>Tokyo, June 7, 2004 featuring </text> b.xsl <td width="50%"> <xsl:value-of select="substring-before(/text, '/a')" /> </td> [ メッセージ編集済み 編集者: ヒデミ 編集日時 2004-06-09 09:15 ] | ||||||||
|
投稿日時: 2004-06-08 18:27
環境というか、どのように取ろうとしているかをはっきりさせてください。 XSLTですか? DOMやSAXですか? 出力形態はなんですか?
この「DOWNLOADを取れた」処理を明示していただければいいと思いますが。 | ||||||||
|
投稿日時: 2004-06-09 09:13
ご回答ありがとうございます。
XML XSLを使うって言ったら答えになりませんか。 初めてなので何がなんだかよく分かりません。 特にXSLT、DOM、SAXなどの言葉は。。。 多分XSLTだとは思いますが。。。(XMLの内容をXSLを使って表示するってことです。) やりたいことはXMLのデータの中で一つのタグのデータをある文字で区切ってとりたいですが。 (XMLは修正でいない状況なので苦労してます。) 「<img src="/icon.gif"/> <a href="/e.pdf">DOWNLOAD</a>Tokyo, June 」がとりたいですが下記の例のようにXSLを作成すると「DOWNLOADTokyo, June 」これしかとれませんでした。 途中にある<img>タグとかのデータもまるごととりたいですが。。。 例: a.xml <text> <img src="/icon.gif"/> <a href="/e.pdf">DOWNLOAD</a>Tokyo, June 7, 2004 featuring </text> b.xsl <td width="50%"> <xsl:value-of select="substring-before(/text, '7')" /> </td> 質問がめちゃくちゃでごめんなさい。 よろしくお願いします。 [ メッセージ編集済み 編集者: ヒデミ 編集日時 2004-06-09 09:14 ] | ||||||||
|
投稿日時: 2004-06-09 12:35
これでは、「とりたい」の意味が不明です。
等々、いろいろ考えられますが、どれなんでしょう? | ||||||||
|
投稿日時: 2004-06-09 14:26
「textタグに囲まれた要素を取得するXSLの書き方」と解釈して回答します。 単純にやれば、 <xsl:copy-of select="/text/img" /> <xsl:copy-of select="/text/a" /> <xsl:copy-of select="/text/text()" /> で取れると思います。ですが、もしtext以下全要素であれば、 <xsl:copy-of select="/text/*" /> <xsl:copy-of select="/text/text()" /> でできるでしょう。 | ||||||||
|
投稿日時: 2004-06-09 17:28
ご回答ありがとうございました。
とりたいって意味はトークンして別々に表示したかったです。 意味不明な質問で申し訳ありませんでした。 自分もよく分かってないのにやろうとしたので。。。。 結果報告です。 uk様のおかげで解決しました。 ありがとうございました。 これからも宜しくお願いします。 |
1