您首先需要一種方法來查找浮動。 假設他們總是被寫入點作爲分隔符,下面會做什麼:
\d+(\.\d+)?
\d+ Match one or more digits
\.\d+ Match a dot followed by one or more digits...
( )? ... maybe
然後,你需要將兩個浮體之間的匹配空白字符:
\s+
全部放在一起:
\d+(\.\d+)?\s+\d+(\.\d+)?
測試使用Python和re
:
import re
regex = re.compile("\d+(\.\d+)?\s+\d+(\.\d+)?")
print(regex.match("0.2 0.34"))
print(regex.match("0.01 0.22"))
輸出:
<_sre.SRE_Match object; span=(0, 8), match='0.2 0.34'>
<_sre.SRE_Match object; span=(0, 9), match='0.01 0.22'>
現在,如果你想捕捉的花車:
(\d+(\.\d+)?)\s+(\d+(\.\d+)?)
你會找到兩個浮點數的羣體1
和3
:
import re
regex = re.compile("(\d+(\.\d+)?)\s+(\d+(\.\d+)?)")
result = regex.match("0.2 0.34")
print(result.group(1))
print(result.group(3))
輸出:
0.2
0.34
謝謝。只需要做一些「枚舉」,以獲得行號。 – AldinDelic
@AldinDelic就答案而言,這不是一個好主意。總是儘量避免迭代行。這是非常緩慢的,並且會打亂大數據。 –
@AldinDelic,很高興知道我的答案幫助您找到了您需要的解決方案。如果需要蘋果,那麼儘管它可能會嚐到更好的味道,但不能消費。 –