ฉันมีปัญหาเล็กน้อยในการทำให้ Python regex ทำงานเมื่อจับคู่กับข้อความที่ครอบคลุมหลายบรรทัด ข้อความตัวอย่างคือ ('\ n' คือขึ้นบรรทัดใหม่)
some Varying TEXT\n
\n
DSJFKDAFJKDAFJDSAKFJADSFLKDLAFKDSAF\n
[more of the above, ending with a newline]\n
[yep, there is a variable number of lines here]\n
\n
(repeat the above a few hundred times).
ฉันต้องการจับภาพสองสิ่ง: ส่วน 'some_Varying_TEXT' และบรรทัดของข้อความตัวพิมพ์ใหญ่ทั้งหมดที่มีสองบรรทัดด้านล่างในการจับครั้งเดียว (ฉันสามารถตัดอักขระขึ้นบรรทัดใหม่ได้ในภายหลัง) ฉันได้ลองใช้หลายวิธี:
re.compile(r"^>(\w+)$$([.$]+)^$", re.MULTILINE) # try to capture both parts
re.compile(r"(^[^>][\w\s]+)$", re.MULTILINE|re.DOTALL) # just textlines
และรูปแบบต่างๆมากมายโดยไม่มีโชค ข้อความสุดท้ายดูเหมือนจะตรงกับบรรทัดของข้อความทีละบรรทัดซึ่งไม่ใช่สิ่งที่ฉันต้องการจริงๆ ฉันจับส่วนแรกได้ไม่มีปัญหา แต่ดูเหมือนจะจับข้อความตัวพิมพ์ใหญ่ 4-5 บรรทัดไม่ได้ ฉันต้องการให้ match.group (1) เป็น some_Varying_Text และ group (2) เป็น line1 + line2 + line3 + etc จนกว่าจะพบบรรทัดว่าง
ถ้าใครอยากรู้อยากเห็นควรเป็นลำดับของกรดอะมิโนที่ประกอบเป็นโปรตีน