說,我想改變字符串 'A =(X + 2.)*(Y + 3.) - '如何在PYTHON中的每個數字後添加一個字符串?
到
「A =(X + 2.0e0)*(y + 3.0e0) - 1.0e0'。
每個數字如2.或只是2應該改變。這個怎麼做?
非常感謝!
說,我想改變字符串 'A =(X + 2.)*(Y + 3.) - '如何在PYTHON中的每個數字後添加一個字符串?
到
「A =(X + 2.0e0)*(y + 3.0e0) - 1.0e0'。
每個數字如2.或只是2應該改變。這個怎麼做?
非常感謝!
給你寫的評論,這樣的正則表達式應該工作:
import re
str = 'A = (x+2.)*(y+3.)-1'
print re.sub(r'(\d+)\.?',r'\1.0e0',str)
輸出:
A = (x+2.0e0)*(y+3.0e0)-1.0e0
正則表達式的說明:
(...)
- 意味着捕捉組,你需要到捕獲更換\d
期間重用 - 意味着任何數量的,相當於[0-9]+
- 裝置,1個或更多次數,相當於{1,}
\.?
- 意味着我們想要0或1 dot
。 ?
相當於{0,1}
在更換:
\1
- 意味着我們要採取第一捕獲組和插入在這裏
定義' 「號」'。例如:「1.2.3 4.5 6,7.8,9.a.6.c.0e891.0」應該是什麼結果? – bezmax 2012-03-23 22:02:13
格式的「數字」將是2.或2否1.2.3東西將存在於字符串中。謝謝 – agent99 2012-03-23 22:04:32