जवाबों:
:%s/\n\(\(A\.$\)\@!.*\)/\1/
एक पैटर्न से मेल खाते हैं:
का एक समूह
A.
सीधे अंत के लाइन द्वारा पीछा किया, तोसाथ में:
और यह विश्व स्तर पर करते हैं।
:help \@!
उस भाग की अधिक जानकारी के लिए विम में देखें । अन्यथा यह सीधे तौर पर आगे है, उम्मीद है, मेरे स्पष्टीकरण के साथ। आपके दृष्टिकोण के साथ एक समस्या यह है कि अगर " A.
" पाठ में होता है, हालांकि एक पृथक मार्कर लाइन के रूप में नहीं है, तो इसे विभाजित किया जाएगा जैसे कि यह मूल रूप से एक मार्कर था। व्यवहार में यह एक समस्या नहीं हो सकती है (मुझे नहीं पता कि आपकी "वास्तविक" फ़ाइल कैसी दिखती है), लेकिन आम तौर पर यह अवांछित व्यवहार का कारण बन सकता है अगर किसी को इसके बारे में जानकारी नहीं है।
:%s///
वाक्य रचना से परिचित नहीं हैं : तो यह विम में एक "खोज और प्रतिस्थापित" सिंटैक्स है। :
कमांड शुरू करता है, %
पूरे बफर को सीमा के रूप में निर्दिष्ट करता है, s
एक प्रतिस्थापन शुरू करता है। /
पैटर्न सीमांकक है (किसी अन्य वर्ण का उपयोग किया जा सकता है, लेकिन /
"मानक" है)। पहला /
खोज पैटर्न शुरू करता है, दूसरा प्रतिस्थापित पैटर्न, और तीसरा इसे समाप्त करता है। केस इंसेंसिटिविटी को निर्दिष्ट करने के लिए ट्रेलिंग मोडिफ़ायर उपलब्ध हैं, आदि \1
सर्च पैटर्न में हड़पने वाले समूह का प्रतिनिधित्व करता है। फ़ाइल के साथ :%s/foo/bar/
बदलता है । foo
bar
:%s/^A\.//
। उत्तर में विधि ^A\.
पैटर्न को खुद (बल्कि उनकी अनुपस्थिति) पर कब्जा नहीं करती है , इसलिए यह उन तारों को स्पष्ट तरीके से संशोधित नहीं कर सकता है।
यह भी काम करता है (जब पहली पंक्ति के साथ शुरू होता है A.
)
:v/^A/-1j!