मैं कई लाइनों तक फैला है कि पाठ के खिलाफ मिलान जब काम करने के लिए पायथन 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 पंक्तियों को पकड़ नहीं सकता। मैं माचिस करना चाहता हूं। समूह (1) कुछ_वेरिंग_Text और समूह (2) को लाइन 1 + लाइन 2 + लाइन 3 + आदि होना चाहिए, जब तक कि खाली लाइन का सामना न हो जाए।
अगर किसी को जिज्ञासु है, तो यह एक प्रोटीन बनाने वाले अमीनोक्साइड का एक क्रम है।
>
चरित्र नहीं है । इसे होना चाहिए?