awk / sed প্রতীক মিলে যাওয়ার আগে সমস্ত অঙ্ক মুদ্রণ করুন


0

আমার মতো লাইনগুলির সাথে ইনপুট রয়েছে (এটি স্যাম ফর্ম্যাট থেকে সিআইজিআর স্ট্রিং তবে এটি এখন কোনও বিষয় নয়):

123M76N55M4S
6M7N25M
32M488N

এবং আমি সমস্ত এন এবং পূর্বের সমস্ত অঙ্কগুলি বের করতে চাই:

76N
7N
488N

আমি এই আদেশটি চেষ্টা করেছি:

sed -r 's/^.*([0-9]+N).*$/\1/'

তবে আমি আউটপুটটি পেয়েছি শুধুমাত্র শেষ অঙ্ক। আমি পূর্ববর্তী সমস্ত অঙ্ক কীভাবে পেতে পারি?

উত্তর:


1

এটি যথেষ্ট হবে:

grep -o '[0-9]\+N'

আপনার সেড রেজেক্স ব্যর্থ হয়েছে কারণ এটি .*খুব লোভী। আপনাকে নিশ্চিত করতে হবে যে আপনি কোনও সংখ্যক গ্রাহ্য করছেন না:

sed -r 's/(.*[^0-9])?([0-9]+N).*/\2/'
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.