簡體   English   中英

使用列表中的 re.sub() 替換字符后的數字

[英]Replace numbers after a character using re.sub() on a list

我有一個存儲在列表中的數字列表,我想刪除之后的所有數字. 列表是['08-52-05.173735', '09-01-22.68835', '09-10-34.145061',]我想刪除. .以下是我正在使用的代碼,

ignore_ms = [re.sub(r'(?<=\.).*$', ' ', y) for y in timestamp]
print (ignore_ms)

其中timestamp是上面的列表。 但是,我得到的結果是,

['[', "'", '0', '8', '-', '5', '2', '-', '0', '5', '. ', '1', '7', '3', '7', '3', '5', "'", ',', ' ', "'", '0', '9', '-', '0', '1', '-', '2', '2', '. ', '6', '8', '8', '3', '5', "'", ',', ' ', "'", '0', '9', '-', '1', '0', '-', '3', '4', '. ', '1', '4', '5', '0', '6', '1', "'", ',', ' ',

而我想要的結果是08-52-05., 09-01-22., 09-10-34.

知道上面的代碼有什么問題嗎?

謝謝。

嘗試使用str.split

l = ['08-52-05.173735', '09-01-22.68835', '09-10-34.145061']
print([i.split('.')[0]+'.' for i in l])

您可以改為 go 使用更簡單的方法避免正則表達式:

l = ['08-52-05.173735', '09-01-22.68835', '09-10-34.145061',]

[i[:i.rfind('.')] for i in l]
# ['08-52-05', '09-01-22', '09-10-34']

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM