Tôi có đầu ra của một lệnh ở dạng bảng. Tôi đang phân tích cú pháp đầu ra này từ một tệp kết quả và lưu trữ nó trong một chuỗi. Mỗi phần tử trong một hàng được phân tách bằng một hoặc nhiều ký tự khoảng trắng, do đó tôi đang sử dụng các biểu thức chính quy để khớp 1 hoặc nhiều khoảng trắng và phân tách nó. Tuy nhiên, một khoảng trắng đang được chèn vào giữa mọi phần tử:
>>> str1="a b c d" # spaces are irregular
>>> str1
'a b c d'
>>> str2=re.split("( )+", str1)
>>> str2
['a', ' ', 'b', ' ', 'c', ' ', 'd'] # 1 space element between!!!
Có cách nào tốt hơn để làm điều này?
Sau mỗi lần phân chia str2
được thêm vào một danh sách.
'str2'
str1.split()
. Không cần một regex.