vim
ढूँढें और बदलें
खोज…
स्थानापन्न कमान
यह आदेश:
:s/foo/bar/g
मौजूदा लाइन पर bar
साथ foo
की प्रत्येक घटना को प्रतिस्थापित करता है।
fool around with a foodie
हो जाता है
barl around with a bardie
यदि आप अंतिम /g
को छोड़ देते हैं, तो यह केवल लाइन पर पहली घटना को प्रतिस्थापित करेगा। उदाहरण के लिए,
:s/foo/bar
पिछली लाइन पर बन जाएगा
barl around with a foodie
यह आदेश:
:5,10s/foo/bar/g
10 के माध्यम से लाइनों 5 में एक ही प्रतिस्थापन करता है।
यह आज्ञा
:5,$s/foo/bar/g
फ़ाइल के पंक्ति 5 से अंत तक समान प्रतिस्थापन करता है।
यह आदेश:
:%s/foo/bar/g
पूरे बफर पर समान प्रतिस्थापन करता है।
यदि आप दृश्य मोड में हैं और कोलन को हिट करते हैं, तो प्रतीक '<,'>
दिखाई देगा। आप ऐसा कर सकते हैं
:'<,'>s/foo/bar/g
और आपके दृश्य मोड चयन के भीतर प्रतिस्थापन होता है।
यह आदेश:
:%s/foo/bar/gc
ऊपर दिए गए आदेश के बराबर है, लेकिन प्रत्येक घटना पर पुष्टि के लिए पूछता है /c
झंडा ("पुष्टि" के लिए)।
देखें :help :s
और :help :s_flags
।
कमांड-लाइन श्रेणियों पर यह अनुभाग भी देखें।
नियमित अभिव्यक्तियों के साथ या बिना बदलें
यह स्थानापन्न कमांड रेग्युलर एक्सप्रेशंस का उपयोग कर सकता है और अवधि के बाद किसी भी (एक) चरित्र के बाद foo
किसी भी उदाहरण से मेल खाएगा .
रेग्युलर एक्सप्रेशंस में किसी भी वर्ण से मेल खाता है, इसलिए निम्न कमांड foo
सभी उदाहरणों से मेल खाता है और उसके बाद वर्तमान लाइन में किसी भी वर्ण से मेल खाता है।
:s/foo./bar/g
1 fooing fooes fool foobar foosup
हो जाएगा
1 barng bars bar barar barup
यदि आप शाब्दिक मिलान करना चाहते हैं .
अवधि आप इसे खोज फ़ील्ड में बैकस्लैश \
_ से बचा सकते हैं।
:s/foo\./bar/g
1 fooing fooes foo.l foo.bar foosup
हो जाएगा
1 fooing fooes barl barbar foosup
या no
साथ s
कमांड का पालन करके सभी पैटर्न मिलान को अक्षम करें।
:sno/foo./bar/g
1 fooing fooes foo.l foo.bar foosup
कोई त्रुटि उठाएगा
E486: Pattern not found