2017-09-26 43 views
-4

我有一些数据如下所示。如何用文本行上的空格替换所有星号(*)

| 07:00 |97322.00 | 1411.00 | 
| 07:30 |97449.00*| 1411.02*| 
| 08:00 |97577.00*| 1411.04*| 
| 08:30 |97705.00*| 1411.06*| 

偶尔的数据进行标记星号的,我需要这样,当它被我使用它的应用程序去读一个数字,而不是字符串用空格来代替星号。 已经找遍了,并试图在这里的大部分变化,并没有得到任何地方。这似乎不应该是那么困难。

回答

2

你可以用户.replace()方法。例如,

str.replace("*"," ") 
0

你可以试试这个:

import re 
s = "| 07:00 |97322.00 | 1411.00 | | 07:30 |97449.00*| 1411.02*| | 08:00 |97577.00*| 1411.04*| | 08:30 |97705.00*| 1411.06*|" 
final_string = re.sub("\*", ' ', s) 

输出:

'| 07:00 |97322.00 | 1411.00 | | 07:30 |97449.00 | 1411.02 | | 08:00 |97577.00 | 1411.04 | | 08:30 |97705.00 | 1411.06 |' 
+0

这将是更好地使用'替换()',而不是're.sub'为它需要比平常更长的时间字符串'替换' –

+0

@KaushikNP这是真的;然而,OP确实将问题标记为“正则表达式”。 – Ajax1234

+0

哎呀,我的错。对于那个很抱歉。没有注意到。 –

0
string before = "Deleting 11 files.ABC: Total Time = 01:16:30, Remaining Time = 00:00:00"; 
string after = Regex.Replace(before, @"[*]", ""); 
相关问题