質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
XML

XMLは仕様の1つで、マークアップ言語群を構築するために使われています。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

0回答

335閲覧

xmlファイルに既存の形式の行を加えたい

emiime

総合スコア27

XML

XMLは仕様の1つで、マークアップ言語群を構築するために使われています。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

1クリップ

投稿2019/03/24 11:51

xmlファイル

1<?xml version='1.0' encoding='UTF-8'?> 2<root> 3 <document> 4 <sentences> 5 <sentence> 6 <tokens> 7 <token start="0" span="1" pos="DT" chunk="I-NP" entity="O" cat="NP[nb]/N" id="t0_0" surf="The" base="the"/> 8 <token start="1" span="1" pos="NN" chunk="I-NP" entity="O" cat="N" id="t0_1" surf="top" base="top"/> 9 <token start="2" span="1" pos="IN" chunk="I-PP" entity="O" cat="(NP¥NP)/NP" id="t0_2" surf="of" base="of"/> 10 <token start="3" span="1" pos="DT" chunk="I-NP" entity="O" cat="NP[nb]/N" id="t0_3" surf="the" base="the"/> 11 <token start="4" span="1" pos="NN" chunk="I-NP" entity="O" cat="N" id="t0_4" surf="mountain" base="mountain"/> 12 <token start="5" span="1" pos="VBZ" chunk="I-VP" entity="O" cat="(S[dcl]¥NP)/(S[pss]¥NP)" id="t0_5" surf="is" base="be"/> 13 <token start="6" span="1" pos="VBN" chunk="I-VP" entity="O" cat="(S[pss]¥NP)/PP" id="t0_6" surf="covered" base="cover"/> 14 <token start="7" span="1" pos="IN" chunk="I-PP" entity="O" cat="PP/NP" id="t0_7" surf="with" base="with"/> 15 <token start="8" span="1" pos="NN" chunk="I-NP" entity="O" cat="N" id="t0_8" surf="snow" base="snow"/> 16 <token start="9" span="1" pos="." chunk="O" entity="O" cat="." id="t0_9" surf="." base="."/> 17 </tokens> 18 <ccg root="s0_sp0" id="s0_ccg0"> 19 <span root="true" id="s0_sp0" child="s0_sp1 s0_sp19" pos="None" category="S[dcl=true]" rule="rp"/> 20 <span id="s0_sp1" child="s0_sp2 s0_sp11" pos="None" category="S[dcl=true]" rule="ba"/> 21 <span id="s0_sp2" child="s0_sp3 s0_sp6" pos="None" category="NP" rule="ba"/> 22 <span id="s0_sp3" child="s0_sp4 s0_sp5" pos="None" category="NP[nb=true]" rule="fa"/> 23 <span start="0" span="1" pos="DT" chunk="I-NP" entity="O" id="s0_sp4" surf="The" base="the" terminal="t0_0" category="NP[nb=true]/N"/> 24 <span start="1" span="1" pos="NN" chunk="I-NP" entity="O" id="s0_sp5" surf="top" base="top" terminal="t0_1" category="N"/> 25 <span id="s0_sp6" child="s0_sp7 s0_sp8" pos="None" category="NP¥NP" rule="fa"/> 26 <span start="2" span="1" pos="IN" chunk="I-PP" entity="O" id="s0_sp7" surf="of" base="of" terminal="t0_2" category="(NP¥NP)/NP"/> 27 <span id="s0_sp8" child="s0_sp9 s0_sp10" pos="None" category="NP[nb=true]" rule="fa"/> 28 <span start="3" span="1" pos="DT" chunk="I-NP" entity="O" id="s0_sp9" surf="the" base="the" terminal="t0_3" category="NP[nb=true]/N"/> 29 <span start="4" span="1" pos="NN" chunk="I-NP" entity="O" id="s0_sp10" surf="mountain" base="mountain" terminal="t0_4" category="N"/> 30 <span id="s0_sp11" child="s0_sp12 s0_sp13" pos="None" category="S[dcl=true]¥NP" rule="fa"/> 31 <span start="5" span="1" pos="VBZ" chunk="I-VP" entity="O" id="s0_sp12" surf="is" base="be" terminal="t0_5" category="(S[dcl=true]¥NP)/(S[pss=true]¥NP)"/> 32 <span id="s0_sp13" child="s0_sp14 s0_sp15" pos="None" category="S[pss=true]¥NP" rule="fa"/> 33 <span start="6" span="1" pos="VBN" chunk="I-VP" entity="O" id="s0_sp14" surf="covered" base="cover" terminal="t0_6" category="(S[pss=true]¥NP)/PP"/> 34 <span id="s0_sp15" child="s0_sp16 s0_sp17" pos="None" category="PP" rule="fa"/> 35 <span start="7" span="1" pos="IN" chunk="I-PP" entity="O" id="s0_sp16" surf="with" base="with" terminal="t0_7" category="PP/NP"/> 36 <span id="s0_sp17" child="s0_sp18" pos="None" category="NP" rule="lex"/> 37 <span start="8" span="1" pos="NN" chunk="I-NP" entity="O" id="s0_sp18" surf="snow" base="snow" terminal="t0_8" category="N"/> 38 <span start="9" span="1" pos="." chunk="O" entity="O" id="s0_sp19" surf="." base="." terminal="t0_9" category="."/> 39 </ccg> 40 </sentence> 41 </sentences> 42 </document> 43</root> 44

このようなxmlファイルがある時、
ccgタグの中の一番最後の行に,
最後から二番目と全く同じ形の<span ~~~~~/>という行をそのままコピーしたいのですが、
どのようなコードを書けば良いか分からず質問させていただきました。

pythonで書いています。
ざっくりとした形での質問ですみません。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

t_obara

2019/03/25 01:14

ファイルをテキストで一行ずつ読み出し、先頭にあるスペースを削除し<spanがあれば残し、最後まで読んだら最後から2番目の<span行を取り出せば良いと思います。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問