這是我的字串
data = 'hs122 125 &55,58, 25'
預期結果:[122, 125, 55, 58, 25]
嘗試1:
data = 'hs122 125 &55,58, 25'
s = re.search(r"\d (\.\d )?", data)
print(s.group(0))
輸出:122
嘗試2:
data = 'hs122 125 &55,58, 25'
s = [int(s) for s in data.split() if s.isdigit()]
print(s)
輸出:[125, 25]
嘗試3:
p = '[\d] [.,\d] |[\d]*[.][\d] |[\d] '
data = 'hs122 125 &55,58, 25'
numbers = []
if re.search(p, data) is not None:
for catch in re.finditer(p, data):
numbers.append(catch[0])
print(numbers)
輸出:['122', '125', '55,58,', '25']
uj5u.com熱心網友回復:
嘗試這個
import re
data = 'hs122 125 &55,58, 25'
results = list(map(int, re.findall(r'\d ', data)))
print(results)
uj5u.com熱心網友回復:
你可以簡單地使用\d 具有findall:
re.findall(r'\d ', 'hs122 125 &55,58, 25')
# ['122', '125', '55', '58', '25']
uj5u.com熱心網友回復:
data = 'hs122 125 &55,58, 25'
res = ''.join(filter(lambda x: x.isdigit(), data))
print("Original string: " data)
print("Digits string: " res)
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/329062.html
標籤:Python
上一篇:將其中一列包含數字陣列作為字串的資料框轉換為json檔案
下一篇:為多個水平條共享Y軸范圍的問題
