2011-07-25 112 views
1

標籤我有這樣的如何插入文本中

或類似的

我想插入標籤到他們的文字:

<tag1>I have a text like that</tag1> 
<tag1>Or like that</tag1> 

我怎麼能在Python實現這一目標?

+2

保羅庫,它看起來像你的問題是缺少某些部分。請糾正它。 –

+0

+1不,它是完整的,自引用 – joaquin

回答

1

聽起來更像是你想在標籤之間插入文本。對?

'<tag1>{0}</tag1>'.format('I have a text like that') 

如果它是一個字符串列表:

>>> l = ['I have a text like that', 'Or like that'] 
>>> ['<tag1>{0}</tag1>'.format(s) for s in l] 
['<tag1>I have a text like that</tag1>', '<tag1>Or like that</tag1>'] 
+0

夠簡單。謝謝。 – Paul

0

我很抱歉,我從來沒有做過蟒蛇,但你可以做的是分裂使用正則表達式的換行各條線和存儲線數組。在每一行添加標籤,然後使用foreach循環將它們組合在一起...

+0

我認爲這種方式或多或少,但對Python設施來說太複雜了。 – Paul

+0

正則表達式應該用於搜索_patterns_。簡單地搜索換行符或通過它們分割文本可以並且應該使用內置字符串函數完成。 – jena

1

只需將標籤視爲普通字符串並進行字符串拼接操作即可。這是基本的方法。

您可以使用str.format操作字符串來在字符串中的標籤之間插入文本。

但如果你的目的是要創造一個良好的XML文檔,那麼Python提供了一個叫做ElementTree的

from xml.etree import ElementTree as ET 

root = ET.Element("root") 
tag1 = ET.SubElement(root,"tag1") 
tag1.text = "hi" 
tag1 = ET.SubElement(root,"tag1") 
tag1.text = "hello" 
tree = ET.ElementTree(root) 
tree.write('s.html')