जवाबों:
नोटपैड ++ ऐसा कर सकता है, बशर्ते आप एक ही समय पर लाइन को क्रमबद्ध करना चाहते हों, और एक ही समय में डुप्लिकेट लाइनों को हटा दें।
आपको TextFX प्लगइन की आवश्यकता होगी। यह नोटपैड ++ के पुराने संस्करणों में शामिल किया गया था, लेकिन अगर आपके पास एक नया संस्करण है, तो आप इसे मेनू से जोड़ सकते हैं Plugins -> Plugin Manager -> Show Plugin Manager -> Available tab -> TextFX -> Install
। कुछ मामलों में यह भी कहा जा सकता है TextFX Characters
, लेकिन यह एक ही बात है
चेक बॉक्स और बटन अब तहत मेनू में दिखाई देगा आवश्यक: TextFX -> TextFX Tools
।
सुनिश्चित करें कि "सॉर्ट आउटपुट केवल अद्वितीय है ..." की जाँच की जाती है। अगला, टेक्स्ट का एक ब्लॉक चुनें ( Ctrl+ Aसंपूर्ण दस्तावेज़ का चयन करने के लिए)। अंत में, "सॉर्ट लाइन्स केस सेंसिटिव" या "सॉर्ट लाइन्स केस असंवेदनशील" पर क्लिक करें
नोटपैड ++ संस्करण 6 के बाद से आप इस रेगेक्स का उपयोग खोज और संवाद को बदल सकते हैं:
^(.*?)$\s+?^(?=.*^\1$)
और कुछ भी नहीं के साथ बदलें । यह सभी डुप्लिकेट पंक्तियों को फ़ाइल में अंतिम घटना से छोड़ता है।
उसके लिए किसी तरह की छंटाई की जरूरत नहीं है और डुप्लिकेट पंक्तियाँ फ़ाइल में कहीं भी हो सकती हैं!
आपको "रेगुलर एक्सप्रेशन" और "मैच न्यूलाइन" विकल्पों की जांच करने की आवश्यकता है:
^
लाइन की शुरुआत से मेल खाता है।
(.*?)
किसी भी वर्ण से 0 या अधिक बार मेल खाता है, लेकिन जितना संभव हो उतना कम है (यह पंक्ति पर बिल्कुल मेल खाता है, "" मेल खाता "विकल्प के कारण इसकी आवश्यकता है")। मिलान की गई पंक्ति को संग्रहीत किया जाता है, क्योंकि ब्रैकेट चारों ओर और सुलभ उपयोग के कारण\1
$
लाइन के अंत से मेल खाता है।
\s+?^
यह भाग अगली पंक्ति की शुरुआत तक सभी व्हाट्सएप पात्रों (newlines!) से मेल खाता है।
(?=.*^\1$)
यह एक सकारात्मक रूपांतर परख है। इस रेगेक्स में यह एक महत्वपूर्ण हिस्सा है, एक पंक्ति केवल मिलान की जाती है (और हटा दी जाती है), जब फ़ाइल में कहीं और एक ही पंक्ति होती है।
. matches newline
उसने चाल को अनियंत्रित किया।
यदि पंक्तियाँ एक-दूसरे के तुरंत बाद हैं, तो आप एक रेगेक्स प्रतिस्थापित कर सकते हैं:
खोज पैटर्न: ^(.*\r?\n)(\1)+
से बदलो: \1
^(.*\r?\n)(\1)+
Notepad ++
-> खिड़की बदलें
सुनिश्चित करें कि खोज मोड में आपने नियमित अभिव्यक्ति रेडियो बटन का चयन किया है
क्या ढूँडो:
^ (। *) (\ R? \ N \ 1) + $
से बदलो:
$ 1
इससे पहले:
और हम वहां सोचते हैं
और हम वहां सोचते हैं
इकलौती रेखा
क्या यह संभव है
क्या यह संभव है
उपरांत:
और हम वहां सोचते हैं
इकलौती रेखा
क्या यह संभव है
यदि आप पंक्ति क्रम (जो मुझे नहीं लगता कि आप करते हैं) के बारे में परवाह नहीं करते हैं, तो आप लिनक्स / फ्रीबीएसडी / मैक ओएस एक्स / सिगविन बॉक्स का उपयोग कर सकते हैं और करें:
$ cat yourfile | sort | uniq > yourfile_nodups
फिर नोटपैड ++ में फाइल को फिर से खोलें।
'cat' is not recognized as an internal or external command, operable program or batch file.
cat yourfile | sort -Unique
नोटपैड ++ के बाद के संस्करणों में स्पष्ट रूप से टेक्स्टएफएक्स प्लगइन शामिल नहीं है। डुप्लिकेट को सॉर्ट / समाप्त करने के लिए प्लगइन का उपयोग करने के लिए, प्लगइन को डाउनलोड किया जाना चाहिए और स्थापित किया जाना चाहिए (अधिक शामिल) या प्लगइन प्रबंधक का उपयोग करके जोड़ा गया।
ए) आसान तरीका (जैसा कि यहां वर्णित है )।
प्लगइन्स -> प्लगइन प्रबंधक -> प्लग इन प्रबंधक दिखाएँ -> उपलब्ध टैब -> टेक्स्टएफएक्स वर्ण -> स्थापित करें
बी) अधिक शामिल तरीका, अगर किसी अन्य संस्करण की जरूरत है या आसान तरीका काम नहीं करता है।
SourceForge से प्लगइन डाउनलोड करें:
ज़िप फ़ाइल खोलें और NppTextFX.dll निकालें
नोटपैड ++ प्लगइन्स निर्देशिका में NppTextFX.dll रखें , जैसे:
C: \ Program Files \ Notepad ++ प्लगइन्स।
नोटपैड ++ प्रारंभ करें, और टेक्स्टएफएक्स फ़ाइल मेनू आइटमों में से एक होगा (जैसा कि कॉलिन पिकार्ड द्वारा उत्तर # 1 में देखा गया है)
TextFX प्लगइन स्थापित करने के बाद, डुप्लिकेट को सॉर्ट और निकालने के लिए उत्तर # 1 में दिए गए निर्देशों का पालन करें।
इसके अलावा, सेटिंग> शोरकट मैपर का उपयोग करके एक कीबोर्ड शॉर्टकट सेट करने पर विचार करें यदि आप इस कमांड का अक्सर उपयोग करते हैं या एक कीबोर्ड शॉर्टकट को दोहराना चाहते हैं, जैसे कि सॉर्टिंग के लिए टेक्स्टपैड में F9।
C:\Users\<your_user>\AppData\Local\Notepad++\plugins\NppTextFX
। इसके अलावा यह अभी भी ठीक काम करता है।
संस्करण 7.8 में, आप इसे बिना किसी प्लग इन के पूरा कर सकते हैं - संपादित करें -> लाइन ऑपरेशन -> लगातार डुप्लिकेट लाइनें हटाएं। आपको इस काम से पहले लगातार क्रम में डुप्लिकेट लाइनें लगाने के लिए फ़ाइल को सॉर्ट करना होगा, लेकिन यह एक आकर्षण की तरह काम करता है।
छाँटने के विकल्प एडिट -> लाइन ऑपरेशंस -> सॉर्ट बाय ... के अंतर्गत उपलब्ध हैं।
ऐसा करने के लिए आपको एक प्लगइन की आवश्यकता हो सकती है। आप ConyEdit की कमांड लाइन cc.ddl
(डुप्लिकेट लाइनें हटा सकते हैं) की कोशिश कर सकते हैं । यह नोटपैड ++ सहित पाठ संपादकों के लिए एक क्रॉस-एडिटर प्लगइन है।
ConyEdit पृष्ठभूमि में चलने के साथ, नीचे दिए चरणों का पालन करें:
cc.ddl
पाठ के अंत में कमांड लाइन दर्ज करें। नियमित अभिव्यक्ति के लिए खोजें: \b(\w+)\b([\w\W]*)\b\1\b
इसे इसके साथ बदलें: $1$2
मारो बदलें बटन जब तक आपकी फ़ाइल में नियमित अभिव्यक्ति के लिए कोई और अधिक मेल खाते हैं।
मेरे लिए कोई काम नहीं किया।
एक समाधान है:
बदलने के
^(.*)\s+(\r?\n\1\s+)+$
साथ में
\1
^(.*)\s+(\r?\n\1\s+)+$
और क्या नहीं ^(.*)\s*(\r?\n\1\s*)+$
?
वर्तमान में प्लगइन प्रबंधक नोटपैड ++ के लिए अनुपलब्ध है (वितरण के साथ नहीं आता है)। आपको इसे मैन्युअल रूप से स्थापित करना होगा ( https://github.com/bruderstein/nppPluginManager/releases ) और यहां तक कि अगर आप करते हैं, तो बहुत सारे प्लग इन अब उपलब्ध नहीं हैं (कोई TextFX) प्लगइन नहीं।
शायद एक और प्लगइन है जिसमें आवश्यक कार्यक्षमता शामिल है। इसके अलावा, नोटपैड ++ में ऐसा करने का एकमात्र तरीका मिलान के लिए कुछ विशेष रेगेक्स का उपयोग करना है और फिर प्रतिस्थापित करना ( Ctrl+ F→ बदलें टैब)।
यद्यपि संपादन मेनू आइटम (ट्रिमिंग, खाली लाइनों को हटाने, छँटाई, ईओएल को परिवर्तित करना) के माध्यम से कई कार्य उपलब्ध हैं, लेकिन कोई "अद्वितीय" ऑपरेशन उपलब्ध नहीं है।
यदि आपके पास विंडोज 10 है तो आप बैश को सक्षम कर सकते हैं (माइक्रोसॉफ्ट स्टोर में उबंटू टाइप करें और इसे इंस्टॉल करने के लिए निर्देशों का पालन करें) और उपयोग करें cat your_file.txt | sort | uniq > your_file_edited.txt
। बेशक आपको "your_file.txt" के समान कार्यशील निर्देशिका में होना चाहिए या इसके पथ के माध्यम से संदर्भित करना चाहिए।