Http://vim.wikia.com/wiki/Changing_case_with_ अनियमित_expressions देखें
यह \ U, \ L, \ u, \ l संशोधक को बहुत स्पष्ट और संक्षिप्त रूप से समझाता है!
इसका सार निम्नलिखित है:
ऐसे समय होते हैं जब आप किसी फ़ाइल के माध्यम से जाना चाहते हैं और कुछ मनमाने मानदंडों से मेल खाने वाले वर्णों के मामले को बदलना चाहते हैं। यदि आप नियमित अभिव्यक्ति को अच्छी तरह से समझते हैं, तो आप वास्तव में इसे आसानी से कर सकते हैं।
यह बैकरेफ़रेन्स के सामने \ U या \ L रखने जैसा ही सरल है, जिसे आप अंत में और \ E के मामले में बदलना चाहते हैं। विम बैकरेफेरेंस अपरकेस या लोअरकेस (क्रमशः) में टेक्स्ट बनाएगा। बैकरेस्ट में पहले वर्ण के मामले को बदलने के लिए \ u और \ l (अंत में \ E) का उपयोग करें।
(ए "बैकरेसेंस" एक नियमित अभिव्यक्ति का एक हिस्सा है जो एक नियमित अभिव्यक्ति के पिछले हिस्से को संदर्भित करता है। सबसे आम बैकरेफरेंस &, \ 1, \ 2, \ 3, ..., \ 9) हैं।
कुछ उदाहरण जो इस तकनीक की शक्ति को प्रदर्शित करते हैं:
पूरी फाइल को लोअरकेस करें
% S /.*/ \ एल एंड / जी
((एक आसान पश्चगामी है जो मैच के संपूर्ण पाठ को संदर्भित करता है।)
उन सभी शब्दों को अपरकेस करें जो एक <(यानी HTML टैग नाम खोलने से पहले) हैं:
:%s/<\(\w*\)/<\U\1/g
नोट भी gu और gU कमांड।
उदाहरण के लिए, ggguG पूरी फ़ाइल को कम कर देगा। (gg = to top, gu = लोअरकेस, G = EOF पर जाएं)।
नाम वाले लोगों के बजाय \ 0 सामान्य backref का उपयोग करके (\ 1, \ 2 आदि) आप रेगेक्स के स्टैंज़ा को बदलने के लिए कुछ टाइपिंग को बचा सकते हैं।
यह regex ऊपरी मामलों को एक फाइल में अपरकेस के लिए स्पष्ट सेट करता है:
:%s/\(select\)\|\(order)\|\(by\)\|\(from\)\|\(where\)/\U\0/g
रॉकेट विज्ञान नहीं, लेकिन अन्यथा आपको यह करना होगा:
:%s/\(select\)\|\(order)\|\(by\)\|\(from\)\|\(where\)/\U\1\U\2\U\3\U\4\U\5/g