【发布时间】:2019-10-25 09:56:38
【问题描述】:
目前,我正在为一项对于像我这样的 python 初学者来说似乎过于复杂的任务而感到头疼。如果您能帮我解决这个问题,我将不胜感激。 我正在尝试用点替换逗号。我希望它只针对 SQL 脚本中的特定元素(粗体值):
Insert into SEC_DATA (HEADER_ID,TIMESTMP,BOMLABEL,TI_TO_EX,HOLD_TI,STRIKE,STRIKE_FORM,SDVALUE,VALUE1,VALUE2) values ('Swaption-Volatilitдten','02/03/2016 00:00:00','DD/MM/YYYY HH24:MI:SS'),'BID','5400','10800','0','D','**0,595**','0','0');
Sooo,我决定使用正则表达式并做了以下事情:
x = "Insert into SEC_DATA (HEADER_ID,TIMESTMP,BOMLABEL,TI_TO_EX,HOLD_TI,STRIKE,STRIKE_FORM,SDVALUE,VALUE1,VALUE2)
values ('Swaption-Volatilitдten','02/03/2016 00:00:00','DD/MM/YYYY HH24:MI:SS'),'BID','5400','10800','0','D','0,595','0','0');"
var = re.sub(r"(\d),(\d)", r"$1.$2", x)
我希望 $1 和 $2 保持组不变,因为我只想将逗号变成点。逗号周围的数字只是为了确保这是正确的逗号。
但是,无论我做什么,总是会导致周围数字的变化:
...('Swaption-Volatilitдten',to_date('02/03/2016 00:00:00','DD/MM/YYYY HH24:MI:SS'),'BID','5400','10800','0','D','**$1.$2**95','0','0');
我该如何解决这个问题?
提前致谢。
尼什
【问题讨论】:
标签: sql regex python-3.x