ฉันมีผลลัพธ์ของคำสั่งในรูปแบบตาราง ฉันแยกวิเคราะห์ผลลัพธ์นี้จากไฟล์ผลลัพธ์และเก็บไว้ในสตริง แต่ละองค์ประกอบในหนึ่งแถวจะถูกคั่นด้วยอักขระช่องว่างอย่างน้อยหนึ่งตัวดังนั้นฉันจึงใช้นิพจน์ทั่วไปเพื่อจับคู่ช่องว่าง 1 หรือมากกว่าแล้วแยกออก อย่างไรก็ตามมีการแทรกช่องว่างระหว่างทุกองค์ประกอบ:
>>> 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!!!
มีวิธีที่ดีกว่าในการทำเช่นนี้?
หลังจากแต่ละการแบ่งstr2
ถูกผนวกเข้ากับรายการ
'str2'
str1.split()
ใช่และคุณสามารถประสบความสำเร็จที่มีเพียงแค่ใช้ ไม่จำเป็นต้องใช้ regex