মহৎ - নির্দিষ্ট মানযুক্ত সমস্ত লাইন মুছুন


116

আমার একটি 900mb লগ ফাইল রয়েছে যা আমি সাবলাইমেক্সট 3 এ খুলতে পারি This এই ফাইলটি নীচের মত লাইনগুলি দ্বারা সজ্জিত।

10/08/2014 23:45:31:828,Information,,,,ExportManager: ,No records to send and/or not connected

যে সমস্ত লাইন রয়েছে সেগুলি আমি কীভাবে ফিল্টার করব No records to send and/or not connected


নীচের সমাধানগুলি কাজ করার সময়, এই ধরণের কাজটি বড় ফাইলগুলির জন্য সেড / অ্যাজকে দিয়ে সত্যই করা উচিত।
বার

উত্তর:


229

আপনি একটি নিয়মিত এক্সপ্রেশন অনুসন্ধান এবং প্রতিস্থাপন করতে পারেন:

সন্ধান করুন> প্রতিস্থাপন ক্লিক করুন।

নিয়মিত এক্সপ্রেশন বোতাম টিপেছে কিনা তা নিশ্চিত করুন।

কী ক্ষেত্রটি সন্ধান করুন, এর জন্য:

^.*No records to send and/or not connected.*\n

প্রতিস্থাপন ক্ষেত্রটি খালি রেখে দিন।

সমস্ত প্রতিস্থাপন ক্লিক করুন


16
শেষে সম্পূর্ণ স্টপ / পিরিয়ড গুরুত্বপূর্ণ, এটি ছাড়া এটি কাজ করবে না। বিকল্পভাবে, আপনি এটি ব্যবহার করতে পারেন:^.*No records to send and/or not connected\S.*$
ন্যাভিগাট্রন

আপনি যদি কোনও বড় ফাইলটিতে অপারেটিং করেন তবে এই সমাধানটি কেবলমাত্র সম্ভব হবে। আমি যখন Ctrl+Shift+K200,000 লাইন নির্বাচিত করেছি তখন আমার মেশিন কয়েক মিনিটের জন্য আটকে যায় ।
প্রেজেক ডি

ইমা আমার 26,000 000 লাইনের ফাইলটি দিয়ে এটি ব্যবহার করে দেখুন: ')
ওয়াইবি

64

যেসব লোক একটি রেজেেক্স লিখতে চান না তাদের জন্য - আপনি কেবল অনুসন্ধানের স্ট্রিংটি নির্বাচন করতে পারেন, ctrl+cmd+gমেনু থেকে "কুইক সন্ধান করুন" টিপুন বা চয়ন করতে পারেন, যা আপনাকে প্রতিটি মিলে যাওয়া স্ট্রিংয়ের জন্য নির্বাচনগুলি পাবেন; সেখান থেকে Homeপ্রতিটি নির্বাচনের কার্সারটি লাইনটির শুরুতে সরিয়ে নিয়ে যাবে, shift+Endপ্রতিটি মিলে যাওয়া লাইনটি নির্বাচন del, delকরবে এবং সেগুলি সমস্ত মুছে ফেলবে।

একাধিক কার্সার সম্পাদনা মজাদার!


4
এটি একটি খুব কার্যকর আরও সাধারণ টিপ। আমার উদ্দেশ্য ছিল স্ট্রিংযুক্ত সমস্ত লাইন মুছে ফেলা। Ctrl+Cmd+Gলিওনিড যে সমস্ত স্ট্রিং নির্বাচন করার পরামর্শ দিয়েছিল আমি তার একটি উদাহরণ নির্বাচন করে শর্টকাট দিয়ে "কুইকফাইন্ড" ব্যবহার করেছি । এর পরে আমি সরাসরি "মুছে ফেলুন লাইন" এ যেতে পারি Ctrl-Shift-Kএবং সার্জিকভাবে এই স্ট্রিং সহ সমস্ত লাইন তাত্ক্ষণিকভাবে মুছে ফেলা হয়। সাব্লাইম টেক্সট সত্যই আমি সর্বকালের সেরা পাঠ্য সম্পাদক হিসাবে ব্যবহার করেছি।
MiB

উইন্ডোজে সিটিআরএল + সেন্টিমিড + জি কি সিআরটিএল + এলটি + জি এর মতো? আমি এটি কাজ করতে পারি না
কালো পান্ডা

উইন্ডোজের জন্য "ব্ল্যাক পান্ডা" শীঘ্রই সমস্ত অনুসন্ধান করুন Alt + f3 - ধন্যবাদ লিওনিড +1
ক্রিস্টোফার

আপনি যদি আমার মতো হন এবং আপনার কাছে হোম বোতাম না থাকে তবে আপনি সিএমডি + <- (বাম তীর )ও ব্যবহার করতে পারেন
কোরে তুগায়

4
আপনি লাইন থেকে নির্বাচন প্রসারিত করতে cmd + L ব্যবহার করতে পারেন use
Koray Tugay

53

আমি রেজ্যাগেক্সকে কাজ করতে পারি না তাই আমি এই উত্তর থেকে Alt-F3 পদ্ধতির ব্যবহার করেছি:

/superuser/452189/how-can-i-filter-a-file-for-lines-containing-a-string-in-sublime-text-2/598999#598999

  1. আগ্রহের স্ট্রিং নির্বাচন করুন
  2. হিট Alt+ + F3সব ঘটনার উপর বহু-কার্সার মোড ঢোকা ( Ctrl+ + CMD+ + GMac OS X এর দিকে)
  3. হিট Ctrl+ + L[মন্তব্য দেখতে] ( Cmd+ + Lম্যাক দিকে)
  4. অন্য বাফারে নির্বাচন অনুলিপি করুন Copy
  5. Del

2
দুটি জিনিস: (১) আপনি এই জাতীয় স্বতন্ত্র উত্তরের সাথে লিঙ্ক করতে পারেন (২) আপনার অন্য উত্তরটি এখানে সংক্ষিপ্ত করা উচিত (এবং যথাযথ হিসাবে এই প্রশ্নের উত্তর দেওয়ার জন্য এটি বিশেষজ্ঞ)।
সুসংগত সংকলক

4
আপনি 3 এবং 4 পদক্ষেপগুলি এর সাথে প্রতিস্থাপন করতে পারেন CTRL + Lযা লাইন ব্রেক সহ পুরো লাইনে নির্বাচন প্রসারিত করে।
ন্নোসোস

2
আমার মতো তাদের জন্য ম্যাক কী স্কিম দ্বারা অভিশপ্ত: Ctrl+Cmd+Gসমস্ত ঘটনাগুলিতে মাল্টি-কার্সার দেওয়া, Cmd+Lলাইনগুলি প্রসারিত করা এবং সাধারণ অনুলিপি / পেস্ট করুন
সিরিল ডুচন-ডরিস

27

এটি আমি উইন্ডোজ ব্যবহারকারীদের জন্য খুঁজে পেয়েছি:

  1. স্ট্রিংটি নির্বাচন করুন (এই স্ট্রিংযুক্ত প্রতিটি লাইন অপসারণ করতে হবে)।
  2. ALT + F3 টিপুন।
  3. Ctrl + L টিপুন।
  4. মুছুন টিপুন।

21

উপরে বর্ণিত রেগেক্স কোডের কোনওটিই আমার ক্ষেত্রে কাজ করে নি, তবে এটি কাজ করেছে:

.*(text in question).*

এটি আপনার কোডে খালি লাইনগুলি দেবে, আপনি কি এটি চান? যদি তা না হয় তবে যোগ করুন \nবা $শেষে:.*(text in question).*\n
ব্যবহারকারী

রেখাগুলিকে '\' যুক্ত করতে লাইনে যদি "abc / xyz / কিছু" কাঠামোর মতো থাকে। উদাহরণস্বরূপ আমরা ABC / এবং / কিছু মধ্যে কিছু অনুসন্ধান করতে তারপর অভিব্যক্তি করা হবে যদি: অ আ ক খ /\.*.*\/ কিছু
অভীক

আমার জন্য কাজ করে, আপনার মতো যদি আমার মতো একাধিক ম্যাচ প্রয়োজন হয় তবে এর মতো ব্যবহার করুন |:.*(a).*|.*(b).*|.*(c).*
ব্রাইক

0

আমি কোনও সাইটম্যাপ সম্পাদনা করার অনুরূপ সমস্যায় পড়েছি

এটি আমার পক্ষে কাজ করেছে:

  1. আপনি যে লাইনে মুছতে চান তাতে সর্বশেষ শব্দটি অনুলিপি করুন
  2. সব খুঁজে
  3. পুরো লাইনটি মুছতে মুছুন টিপুন

0

উপরের উত্তরগুলি সঠিক উপায়, তবে আপনি যদি একটি একক স্ট্রিং দিয়েও সারিগুলি থেকে মুক্তি পেতে চান তবে অনুসন্ধান করুন -> প্রতিস্থাপন করুন -> ^.*[a-zA-Z]+.*\nসন্ধান বিভাগে রাখুন এবং ফাঁকা দিয়ে প্রতিস্থাপন চালিয়ে যান। প্রতিস্থাপনের সমস্ত বোতাম হিট করুন এটি এতে এমনকি একটি একক স্ট্রিং সহ সমস্ত সারি মুছে ফেলবে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.