একটি কোডব্লক সরঞ্জাম তৈরি করুন


18

এসই নেটওয়ার্কের মতো মার্কআপ ব্যবহার করার সময়, পাঠ্যের একটি লাইনের আগে চার স্পেসের একটি ইন্ডেন্টেশন কোড ব্লকের অংশ হিসাবে চিহ্নিত করে, আশা করি আপনি জানেন। আপনি যদি না করেন তবে এখানে একটি উদাহরণ রয়েছে ( .একটি স্থানকে প্রতিনিধিত্ব করে):

.... কোড
.... আরও কোড

ফলাফল স্বরূপ

Code
More code

সমস্যাটি হ'ল, আপনি যখন কোনও উত্তরে কোডটি কপি-পেস্ট করবেন তখন আপনাকে প্রতিটি লাইন ম্যানুয়ালি ইনডেন্ট করতে হবে। অগল্ফড কোড সহ কাজ করার সময় এটি বিশেষত কঠিন, কারণ এটি ইতিমধ্যে ইন্টেন্টেড এবং বিভ্রান্তির কারণ হতে পারে। আপনি কেবল আপনার কোডটি নির্বাচন করতে এবং হিট করতে পারেন Ctrl + K, এটি দেখা যাচ্ছে। আমার জীবনের ঘন্টাগুলি বিনা কারণে নষ্ট করা ...

সুতরাং, আপনার লক্ষ্যটি একটি ইনপুট দেওয়া হয়েছে, প্রতিটি লাইনের আগে চারটি ফাঁকা জায়গা দিয়ে এটি ফিরিয়ে দিন। সময় অনুলিপি-পেস্ট সাশ্রয়ের আত্মায় আপনি পুরো ইনপুটটিকে একক স্ট্রিং হিসাবে প্রক্রিয়াকরণ করতে পারেন (যতক্ষণ না আপনার ভাষা এটি পার্স করতে পারে)। যদি আপনার ভাষা স্ট্রিংগুলিতে কোনও অক্ষর (যেমন নিউলাইনগুলি) প্রসেস করতে অক্ষম হয় তবে আপনি ধরে নিতে পারেন যে ভাষাটি সমর্থিত অন্য কোনও পদ্ধতির মাধ্যমে এটি চিহ্নিত / পালানো হয়েছে; তবে আউটপুট অবশ্যই প্রতিটি লাইনকে তার নিজস্ব লাইনে আউটপুট দিতে হবে (সুতরাং এর মতো কিছু পাস করবে না ....foo\n....bar)।

স্ট্যান্ডার্ড লুফোলগুলি অনুমোদিত নয়। এটি , বাইটের মধ্যে সংক্ষিপ্ত উত্তর ins শুভকামনা!


3
"আপনাকে প্রতিটি লাইন ম্যানুয়ালি ইনডেন্ট করতে হবে" (বা পাঠ্যটি নির্বাচন করুন এবং বোতামটি ক্লিক করুন :))
জোনাথন অ্যালান

11
@ জোনাথন অ্যালান "বাটন"? অবশ্যই আপনার অর্থ "কীবোর্ড শর্টকাট"। (সিটিআরএল + কে)
মার্টিন এন্ডার

31
@ জোনাথন অ্যালান ... আমি ... আমি খুব খারাপ অনেক সময়. বরবাদ।
পাপায়মান1000

6
যদিও আমি দৃ confident়ভাবে আত্মবিশ্বাসী যে ক্রিটিক্সির ভি উত্তর পিটানো হবে না, আমি সাধারণত উত্তর গ্রহণের আগে কিছুটা অপেক্ষা করার পরামর্শ দিই, কারণ এত তাড়াতাড়ি গ্রহণ করা লোকের পক্ষে অসুবিধা সৃষ্টি করে যারা সংক্ষিপ্ত উত্তর দিয়ে উত্তর দিতে পারে তবে তা ছিল না সেই সময়কার সাইটটি (সময় অঞ্চল বা কেবল সর্বদা পিপিসি 24/7 তে থাকে না)
হাইপারনেট্রিনো

2
লোকদের সম্পর্কে অবহিত করার জন্য +1Ctrl + K
কাইশোর রায়

উত্তর:


17

ভি , 4 বাইট

Î4É 

এটি অনলাইন চেষ্টা করুন!

(পিছনের স্থানটি নোট করুন)

ভি ল্যাটিন 1 এ এনকোড হয়েছে, যেখানে এটি এর মতো এনকোড করা আছে:

00000000: ce34 c920                                .4. 

ব্যাখ্যা

Î            " On every line
 4É<space>   " Prepend 4 spaces

এখানে একটি সমাধান যা ইউটিএফ -8 এ 4 বাইটও রয়েছে!

VG4>

VG          " Select everything
   >        " Indent
  4         " 4 times (with spaces)

2
আশা করি কেউ এই ফোনটি তুলেছে, কারণ বাহু কেউ ফোন করেছে।
পাপায়মান1000

বিকল্প সমাধান:4ñ>G
ডিজেএমসিএমহেম

@ ডিজেএমসিমেহেম তবে এটি ফাঁকা জায়গাগুলির পরিবর্তে ইনডেন্ট করার জন্য ট্যাবগুলি ব্যবহার করে
ক্রিটিসি লিথোস

ভিমে, হ্যাঁ ভি তে, না, এটি 4 টি স্পেস
ডিজেএমসিএমহেম

@ ডিজেএমসিএমহেম ধন্যবাদ, এটি ইউটিএফ -8 এর মাত্র 4 বাইট যা অন্য একটি বিকল্প সমাধানকে অনুপ্রাণিত করেছে!
ক্রিটসি লিথোস

9

ক্রাইওন , 7 বাইট

`¤q;3xq

এটি অনলাইন চেষ্টা করুন!

ব্যাখ্যা

ক্রাইওন হ'ল স্ট্যাক-ভিত্তিক ভাষা যা ASCII- আর্ট তৈরির জন্য ডিজাইন করা হয়েছে। এটি এখনও উন্নয়নের প্রাথমিক পর্যায়ে রয়েছে তবে এটি কম বাইট গণনা দিয়ে এই চ্যালেঞ্জটি শেষ করার পক্ষে যথেষ্ট জানেন:

         Implicit: input string is on the stack
`¤       Push a non-breaking space to the stack.
  q;     Draw this at the cursor (0,0 by default) and pop it.
    3x   Move three more spaces to the right.
      q  Draw the input string here (at 4,0).
         Implicit: output the canvas, trimmed to a rectangle

নন-ব্রেকিং স্পেস অঙ্কন করা প্রয়োজনীয় কারণ ক্রেইন স্বয়ংক্রিয়ভাবে আউটপুটটিকে একটি আয়তক্ষেত্রায় ছাঁটাই করে, সুতরাং এনবিএসপি ছাড়াই এটি কেবল আসল ইনপুটটি মুদ্রণ করে।


ক্রাইওন কি আপনাকে বিপরীতটি করতে দেয়: স্ট্রিং আউটপুট দেয়, তারপরে চারটি ফাঁকা বাম দিকে সরান এবং একটি এনএসপি আউটপুট দেয়? স্ট্যাক ম্যানিপুলেশনে এটির জন্য কম ব্যয় হওয়ার সম্ভাবনা রয়েছে, যদিও ক্রেইন সঠিকভাবে ক্যানভাসকে সঠিক জায়গায় স্থানান্তরিত করবে কিনা তা আমি জানি না।

@ আইস ৫৩৩ হুম, এটি সত্যিই একটি ভাল ধারণা ... দুর্ভাগ্যক্রমে, এর জন্য x = -4 এ যাওয়ার প্রয়োজন হবে, যা এই মুহুর্তে কোনও সহজ কাজ নয়। এক মাস ধরে আমি যে পরিবর্তনগুলি নিয়ে কাজ করেছিলাম তা সত্যিই আমার
ঠেকানো উচিত

7

রেটিনা , 8 বাইট

%`^

এটি অনলাইন চেষ্টা করুন!

দ্বিতীয় লাইনে চারটি স্থান রয়েছে। বিকল্প সমাধান ব্যবহার হয় m`^বা %1`বা 1%`প্রথম লাইনে। এই সমস্তই প্রতিটি লাইনের শুরুতে অবস্থানের সাথে মেলে এবং এটিকে চারটি স্পেস দিয়ে প্রতিস্থাপন করে।


আমার সন্দেহ হয়েছিল একটি রেটিনা উত্তরটি প্রথম হবে।
নীল

ভাল যে দ্রুত ছিল।
পাপায়মান1000

@ নীল আমি ভীষণ অবাক হব যদি এটি ভি (বা এমনকি কাঁচা ভিম) দ্বারা পরাজিত না হয়। :)
মার্টিন এন্ডার

1
@ মার্টিনএন্ডার ইয়া ইয়া গো (ভি তে 4 বাইট): কোডগল্ফ.স্ট্যাকেক্সেঞ্জাংটা / এ / 115870/41805 :)
ক্রিটসি লিথোস

7

চেডার, 31 বাইট

@.lines.map(("    ":+)).asLines

সত্যিই সহজ, তবে আমি পোস্ট করেছি কারণ এটি নতুন কার্যকরী অপারেটরদের দেখায়।

(" ":+)হিসাবে একই A -> " " + A। (অর্থাত্ +এলএইচএসের সাথে " "আবদ্ধ একটি ফাংশন হিসাবে )।

আমি এমনকি ব্যাখ্যা প্রয়োজন মনে করি না


ওহ আপনি কীভাবে পার্সার কাজ করেন তা বদলাতে পারেন? আমি যা মনে করি তা থেকে :সমস্যার কারণ হতে পারে?:
কনার ও'ব্রায়ান

@ কনরোও ব্রায়েন আমি কীভাবে এটি ঠিক করেছি তা ভুলে গিয়েছি তবে আমি বিশ্বাস করি যে :কোনও মিল নেই ?বলে পার্সার এটিকে কার্যকরী বিকল্প হিসাবে বিবেচনা করবেন। এটি এখনও কার্যকরী
অপটিকে পেরেনগুলি


কী @মানে?
লিকি নুন

6

পাইথন ,  44  39 বাইট

ক্রস আউট & nbsp; 44 & nbsp; এখন আর 44 নেই :)

-5 বাইটস ওভসকে ধন্যবাদ (প্রিপেন্ড দিয়ে ডিকুই এড়িয়ে চলুন)

lambda s:' '*4+s.replace('\n','\n    ')

এটি অনলাইন চেষ্টা করুন!


lambda s:' '*4+s.replace('\n','\n ')39 বাইটের জন্য
ovs

@ ওভস - আমি এটি দেখছি না ... আপনার lambda s:' '*4+s.replace('\n','\n ')[1:]40 এর অর্থ (যা কাজ করে না) বা অন্য কিছু?
জোনাথন অ্যালান

1
শুধু lambda s:' '*4+s.replace('\n','\n<4 spaces>') Tio
ovs

@ ওও হ্যাঁ হ্যাঁ, অবশ্যই (মন্তব্য চারটি স্পেস মার্কডাউন রেন্ডারিং আমাকে ছুঁড়ে দিয়েছে এবং আমি আমার জবাবটিতে এটি লক্ষ্য করিনি) সংরক্ষণের জন্য ধন্যবাদ!
জোনাথন অ্যালান

6

জাভাস্ক্রিপ্ট, 26 বাইট

8 বাইট বন্ধ করে গল্ফ করার জন্য @ কনার ও ব্রায়েনকে ধন্যবাদ জানাই

x=>x.replace(/^/gm,"    ")

একটি রেজেক্সের সাথে / g এর সাথে প্রতিস্থাপন করুন সমস্ত দৃষ্টান্ত প্রতিস্থাপন করে। মিঃ স্ট্রিং start শুরু করার জন্য প্রতিটি রেখাকে আলাদাভাবে ট্রিট করে ^

এটি অনলাইন চেষ্টা করুন!


এটি asdfবারবার ইনপুটটিতে অ-শ্বেত স্পেসে ঝাঁপিয়ে পড়েছে বলে মনে হচ্ছে ।
পাপায়মান1000

আপনি টিআইও
তে

x=>x.replace(/^|\n/g,"$&    ")প্রথম লাইন এবং নীচের লাইনগুলি
একসাথে


1
বা too খুব বেশি কাজ করে আমি অনুমান করি ;-)
ইটিএইচ প্রডাকশনগুলি

4

পাইথন 2, 87 45 বাইট

print' '*4+'\n    '.join(input().split('\n'))

ইনপুট হিসাবে নেওয়া হয় 'Line1\nLine2\nLine3...'(প্রয়োজনীয় উদ্ধৃতি)

@ ওয়েট উইজার্ডকে আমাকে এমন ধারণা দেওয়ার জন্য ধন্যবাদ যা আমাকে গল্ফ 42 বাইটে সহায়তা করেছিল।


আমি পাইথনে বড় হয়েছি। এটাই আমাকে ভেবেছিল যে এটি একরকম শক্ত হবে। এমনকি RegEx উপেক্ষা করেও, আমি খুব ভুল ছিলাম , দেখা যাচ্ছে।
পাপায়মান1000

@ পাপায়াম্যান 1000 এটি রেজিএক্সের সাথে এবং ছাড়া উভয়ই মোটামুটি তুচ্ছ একটি চ্যালেঞ্জ, যদিও আমি এটি অত্যন্ত আকর্ষণীয় বলে মনে করি।
হাইপার নিউট্রিনো

2
আমি স্বীকার করব, যেহেতু আমি জানিনা Ctrl + K, কারণ এই চ্যালেঞ্জটির প্রস্তাবিত হওয়ার আসল কারণগুলি ছিল ... খাঁটি ধাঁধার চেয়ে কম less
পাপায়মান1000

@ পাপায়মান1000 হাহা, হ্যাঁ, প্রতিটি লাইনের সামনে 4 বার স্থান টিপানোটি বেশ বিরক্তিকর ছিল। বিশেষত যেহেতু আমি সাধারণত পাইথন ব্যবহার করি এবং তাই সারাক্ষণ আমার একাধিক লাইন থাকে (যখন আমি জাভা ব্যবহার করতাম তখন তেমন খারাপ হয় না)। অবশেষে আমি সবেমাত্র অলস হয়ে গিয়েছিলাম এবং আমার পাঠ্য সম্পাদকটি ^`with এর সাথে প্রতিস্থাপন করতে ব্যবহার করেছি`
হাইপারনিউটারিনো

1
@ ওয়েট উইজার্ড এই পরামর্শের জন্য ধন্যবাদ, আমি এটিকে কিছুটা কমিয়ে দিয়েছি। এখন কি কিছুটা ভাল হয়?
হাইপারনিউটারিনো

4

জেলি , 8 বাইট

Ỵṭ€⁶ẋ4¤Y

এটি অনলাইন চেষ্টা করুন!

কিভাবে?

Ỵṭ€⁶ẋ4¤Y - Main link: string
Ỵ        - split on newlines
      ¤  - nilad followed by ink(s) as a nilad:
   ⁶     -     a space character
    ẋ4   -     repeated four times
 ṭ€      - tack for €ach
       Y - join with newlines

অন্য কয়েকটি 8 বাইট রূপগুলি হ'ল:
Ỵṭ€⁶Yµ4¡(নিউলাইনগুলিতে বিভক্ত হওয়ার 4 পুনরাবৃত্তি, একটি একক স্থান সন্ধান করুন);
⁶ḤḤ;ЀỴY(দ্বিগুণ হওয়া 4 Ѐটির গুণমানের মতো, সঠিক যুক্তির উপরে মানচিত্র রয়েছে, তাই আমরা টেচিংয়ের পরিবর্তে সংশ্লেষ করতে পারি);
এবং অন্যান্য পুনর্বিন্যাস।


4

ইমাস, 5 টি কিচর্ডস, 5 বাইট

C-x h M-4 C-x tab

কীবোর্ড এন্ট্রির জন্য অন্তত একটি সাধারণভাবে ব্যবহৃত এনকোডিং, এই keychords প্রতিটি একটি একক বাইট: 18 68 b4 18 09। ইমাক্স এন্ট্রিগুলি খুব কীচর্ড-ভারী হতে থাকে, কারণ প্রতিটি মুদ্রণযোগ্য ASCII চরিত্রটি একাধিক-অক্ষর কমান্ডের পরবর্তী চরিত্র ব্যতীত নিজের জন্য দাঁড়ায় (যার অর্থ কেবল কীচার্ডগুলি প্রকৃত আদেশ দিতে পারে)।

আমি নিশ্চিত না যে এটি কীভাবে ভিমের সাথে তুলনা করে (ভি এর বিপরীতে)। তবে পিএমপিজিতে ভিম মোটামুটিভাবে ব্যবহৃত হয়, এবং তাই আমি ভেবেছিলাম সম্পাদক যুদ্ধের অন্য দিকটিও স্পটলাইটে তার সময়ের উপযুক্ত।

এটি ধরে নিয়েছে যে আইফোনটি বাফারের মাধ্যমে সম্পন্ন হয়েছে (ভিআইএমের জন্য সাধারণ আই / ও কনভেনশনগুলির সমতুল্য), বা কোনও ফাইল এবং আউটপুট থেকে পর্দায় নিয়ে যায় (যা একই জিনিস আসে)। আপনি যদি পরিবর্তে অঞ্চলটির মাধ্যমে আই / ও করেন, যা কিছু ধরণের প্রোগ্রামের জন্য প্রাকৃতিক, আপনি 3 বাইটের স্কোরের জন্য নেতৃস্থানীয় দুটি অক্ষর মুছতে পারেন; তবে আমি মনে করি না যে এটি পিপিসি বিধি মেনে চলে।

ব্যাখ্যা

C-x h M-4 C-x tab
C-x h               Specify the entire buffer as the region
      M-4           Give the argument 4 to the next command that runs
          C-x tab   Increase the indentation level of each line by a constant

এখানে ব্যবহৃত সর্বশেষ বিল্টিন অবশ্যই এই চ্যালেঞ্জের জন্য অবিশ্বাস্যভাবে কার্যকর; বাকি শুধু কাঠামো।


3

পাওয়ারশেল, 29 28 বাইট

"$args"-split"
"|%{" "*4+$_}

-1 ফার্গুসকে ধন্যবাদ, new n এর পরিবর্তে প্রকৃত নিউলাইন ব্যবহার করে

ইনপুটটিকে "$args"স্ট্রিং হিসাবে গ্রহণ করে ("গুলি ব্যবহার করে" কাস্ট করে এবং -splitএটি একটি নতুন লাইনে সেট করে , তারপরে লুপ ( %{}) করে চারটি স্পেস ( " "*4) এবং লাইন ( $_) সংযোজন করে তারপরে স্পষ্টভাবে আউটপুট দেয়।


আপনি কি `n এর পরিবর্তে একটি নতুন লাইন চরিত্রটি ব্যবহার করতে পারেন?
ফারগুসক

@fergusq প্রকৃতপক্ষে আমি আপডেট করতে পারি।
কলসডব

সম্ভবত নিউলাইন চরিত্রটি উইন্ডোতে \ r \ n যা এখনও দুটি বাইট রয়েছে - বা একটি নতুন রেখাচিত্রের অক্ষরটি কতগুলি বাইট নেয় সে সম্পর্কে কোনও বিধি রয়েছে কি?
poizan42

@ পোইজান ৪২ এটি সম্পর্কে কোনও মেটা পোস্ট রয়েছে কিনা তা আমি নিশ্চিত নই, তবে আমি এটি কেবলমাত্র নিউলাইন দিয়ে ডিফল্ট কনসোলে চালাতে পারি যাতে এটি অবৈধ মনে করার কোনও কারণ নেই।
colsw

3

পাইথ, 10 বাইট

jm+*4\ d.z

চেষ্টা করে দেখুন!

লাইনের তালিকা হিসাবে যদি ইনপুটটির অনুমতি দেওয়া হত তবে আমি এটি 7 বাইটে করতে পারতাম:

jm+*4\ 

চেষ্টা কর

দীর্ঘ সমাধান:

12 বাইট:

+*4d:Eb+b*4d

12 বাইট:

+*4dj+b*4d.z

13 বাইট:

t:E"^|
"+b*4d

এটি 9 এ নেমে গেছে:jbm*4\ .z
তালি দাও


ওহ d, আমি ভুলে গেছি আপনার 10 বাইট উত্তর হ'ল আমি যা যাচ্ছিলাম, যাইহোক
তালি

2

রাদা , 21 বাইট

{(_/"
")|[`    $_
`]}

এটি অনলাইন চেষ্টা করুন!

এটি একটি বেনামে ফাংশন। স্ট্রিম থেকে ইনপুট টানা হয়।

ব্যাখ্যা:

{
    (_/"\n") |        /* Splits the input at newlines */
    ["    ".._.."\n"] /* For each line, prints four spaces before the line */
}

না identity()শুধু stdin থেকে সব মান টান?
ক্রিটিকি লিথোস

@ ক্রিতিক্সিলিথোস হ্যাঁ identityইনপুট স্ট্রিম থেকে মানগুলি টানুন এবং এটিকে তার আউটপুট প্রবাহে ঠেলা দেয়। এটি অভিন্ন push(x) for x
ফারগুসক

2

পার্ল 5 , 11 + 1 = 12 বাইট

কোড + -pপতাকা 11 বাইট ।

s/^/    /mg

এটি অনলাইন চেষ্টা করুন!

একবারের জন্য, ব্যাখ্যাগুলি সংক্ষিপ্ত হবে: রেজেক্স লাইনটির প্রতিটি প্রারম্ভকে ( মডিফায়ারের ^সাথে মিলিত /m) চারটি স্পেস দ্বারা প্রতিস্থাপন করে - শেষ end


এটি সামগ্রিকভাবে স্ট্রিংয়ের পরিবর্তে একবারে ইনপুট একটি লাইন পড়ে।

@ ais523 উত্তর দুটি মোটামুটি অর্ধেক, শীর্ষ দুটি সহ সঠিকভাবে ইনপুট পড়ুন।
ম্যাক্সিম মিখায়লভ

@ আইস ৫২৩ আমি বলব এটি একবারে ইনপুটটিকে এক লাইনে প্রসেস করে তবে এটি পুরো স্ট্রিং হিসাবে এটি পড়তে পারে (উদাহরণস্বরূপ আপনি <<< "..." সরবরাহ করলে)। আপনি একমত না?
দাদা

@ ais523 এ সম্পর্কে আরও কিছু চিন্তা করার পরে, আমি মনে করি আপনি ঠিক বলেছেন। (আমি সেই অনুযায়ী আমার কোড আপডেট করেছি)
দাদা


2

সেড , 16 10 9 বাইট

s/^/    /

এটি অনলাইন চেষ্টা করুন!

সম্পাদনাগুলি

ক্রিটসি লিথোসকে ধন্যবাদ 16 থেকে 10 বাইট থেকে সমাধানের আকার হ্রাস করা ।

-১ বাইট ধন্যবাদ শৈশুমারকে


-rপতাকাটি ব্যবহার করে আপনি 15 বাইট পেতে পারেন (1 বাইট) যাতে আপনি প্রথম বন্ধনীগুলির আগে ব্যাকস্ল্যাশগুলি সরিয়ে ফেলতে পারেন।
ক্রিটসি লিথোস

আপনি ব্যবহার করে 13 পেতে পারেন s/.*/ &/(মৌখিক অপসারণ এবং প্রতিস্থাপন \1সঙ্গে &)
Kritixi Lithos

@ ক্রিটিক্সিলিথোস ধন্যবাদ! এটি ছাড়াও কাজ করে *
ম্যাক্সিম মিখায়লভ

বা সহজভাবে s:^: :, 9 বাইট জন্য।
শৈশুমারা

@ সেশৌমারা আমি কখনও কলোনকে সেড স্ক্রিপ্টে এভাবে ব্যবহার করতে দেখিনি ... আপনি কি জানেন যে ম্যানুয়ালটির কোন অংশটি এই সিনট্যাক্সটি বর্ণনা করে?
ম্যাক্সিম মিখায়লোভ

2

জাভা 7, 58 বাইট

String c(String s){return"    "+s.replace("\n","\n    ");}

ব্যাখ্যা:

এখানে চেষ্টা করুন।

  • চারটি শীর্ষস্থানীয় স্পেস সহ যুক্ত করুন
  • নতুন লাইন + চারটি স্পেসের জন্য প্রতিটি নতুন লাইন প্রতিস্থাপন করুন

আমি চিরকাল দু: খিত যে জাভার রেজেক্স পদ্ধতিগুলির বেশিরভাগ অংশের জন্য অন্যান্য লাইব্রেরি প্রয়োজন।
পোকে

আমার মনে হয় আপনার দরকারreplaceAll
খালেদ.কে।

@ খালেদ.কে কেন? উভয়ই .replaceএবং .replaceAllঅনুসন্ধান করা স্ট্রিংয়ের সমস্ত উপস্থিতি প্রতিস্থাপনের সাথে প্রতিস্থাপন করবে। .replaceআক্ষরিক স্ট্রিংগুলির .replaceAllজন্য এবং রেজিক্সগুলির জন্য ব্যবহৃত হয়। যেহেতু \nকোনও রেজেক্স নয়, .replaceকোনও সমস্যা ছাড়াই সমস্ত নিউলাইনটিকে নতুন লাইন + চারটি স্পেস দিয়ে প্রতিস্থাপন করতে ব্যবহার করা যেতে পারে, যা আপনি সরবরাহ করেছেন "চেষ্টা করুন এটি লাইন" লিঙ্কটিতেও পরীক্ষা করতে পারেন।
কেভিন ক্রুইজসেন

2

ব্রেন-ফ্লাক , 109 103 বাইট

-6 গম উইজার্ড ধন্যবাদ

এর জন্য +1 অন্তর্ভুক্ত -c

((()()()()()){}){(({}<>)[()()((()()()()){})]<(((((({}){}){}))))>){(<{}{}{}{}{}>)}{}<>}<>{({}<>)<>}<>{}

এটি অনলাইন চেষ্টা করুন!

((()()()()()){})        # Add a newline to the beginning
                        # This is needed to get spaces infront of the first line)
{                       # For every character (call it C)
  (({}<>)               #   Move C to the other stack
  [()()((()()()()){})]  #   Push 8 and subtract 10 (\n) from C
  <(((((({}){}){}))))>) #   Push 4 spaces using the 8 from earlier
  )                     #   Push C - 10
  {(<                   #   If C - 10 != 0...
    {}{}{}{}{}          #     Pop the 4 spaces that we added
  >)}{}                 #   End if
  <>                    #   Switch stacks to get the next character
}                       # End while
<>{({}<>)<>}<>          # Reverse the stack (back to the original order)
{}                      # Pop the newline that we added



পছন্দ করুন আমার মতো অপ্রয়োজনীয় সন্ধান করা দরকার। এটি সম্ভবত আমার সাথে পুশ পপের চেয়ে বেশি ঘটে। এগুলি এখন কেবল স্বয়ংক্রিয়। ধন্যবাদ
রাইলি




1

এমএটিএল , 12 বাইট

10&Yb"4Z"@gh

ইনপুট নিউলাইনগুলি সহ একটি স্ট্রিং। এটি প্রবেশ করতে, আপনাকে নতুন লাইন উপস্থাপন করতে সাধারণ অক্ষরের মধ্যে 10 অক্ষরকে সংযুক্ত করতে হবে (বর্গাকার বন্ধনীর সাথে সংযোগ দেওয়া):

['Code' 10 'More code']

অনলাইনে এমএটিএল এ চেষ্টা করুন !

ব্যাখ্যা

10&Yb   % Implicit input. Split at char 10 (newline). Gives cell array of strings
"       % For each
  4Z"   %   Push string of 4 spaces
  @g    %   Push the contents of current cell array, i.e. a string with one of the
        %   original lines
  h     %   Concatenate the two strings horizontally
        % Implicit end. Implicit display

1

পিএইচপি, 16

echo"    $argn";

সাথে চালানো php -R <code>-Rপ্রতিটি ইনপুট লাইনের জন্য প্রদত্ত কোড চালায় এবং $argnবর্তমান ইনপুট লাইন খাওয়ানো হয়। সুতরাং এটি কেবল প্রতিটি লাইন এর সামনে অতিরিক্ত চারটি স্পেস সহ প্রিন্ট করে।


1

ভি , 3 বাইট (প্রতিযোগী নয়)

4>G

এই উত্তরটি এমন একটি বৈশিষ্ট্য ব্যবহার করে যা আমি কিছু সময়ের জন্য যুক্ত করার পরিকল্পনা করেছিলাম, তবে আজই যোগ করার কাছাকাছি চলে এসেছি। এটি এই উত্তরটিকে প্রতিযোগিতামূলক এবং জয়ের জন্য অবৈধ করে তোলে। তবে এ জাতীয় দরকারী / প্রতিযোগিতামূলক বৈশিষ্ট্যটি প্রদর্শন করা এখনও দুর্দান্ত!

এটি অনলাইন চেষ্টা করুন!

ব্যাখ্যা:

4>   " Add an indent of 4 to...
  G  "   Every line from the current line (0 by default) to the end of the buffer

ঝরঝরে! কমপক্ষে এই বিষয়ে কিছুটা গর্ব করুন যে আপনার ভাষা আগেও শীর্ষ স্থান নিয়েছে [যদিও এটি একটি নোংরা গল্ফের ভাষা ... না, জে কে]!
পাপায়মান1000

1

ভিম, 6 টি কিস্ট্রোক

<Ctrl-V>G4I <Esc>

ধরে নিই যে কার্সারটি ফাইলের শুরুতে রয়েছে, যেন আপনি কমান্ড লাইন থেকে ফাইলটি ফাইলের মাধ্যমে খোলেন vim filename

<Ctrl-V>            " Enter visual block move (enables rectangular selection)
        G           " Move to bottom line (selecting the entire first column)
         4          " Repeat the following action 4 times
          I         " Insert at start of (each selected) line
                    " [input a space]
            <Esc>   " Exit insert mode

একটি তেজ খাঁজ 4 শূণ্যস্থান ব্যবহার করার জন্য কনফিগার সঙ্গে এটি 2 কীস্ট্রোকগুলি হবে: >G


আমি প্রায় নিশ্চিত করুন যে আপনি অপসারণ করতে পারেন আছি ZZশেষে। সাধারণত ভিএম সাবমিশনগুলি কোনও ফাইলের পরিবর্তে বাফারে আউটপুট হয়।
ডিজেএমসিএমহেম

ঠিক আছে, ধন্যবাদ আমি ZZতখন সরিয়েছি ।
ডানিরো

1

জাপট , 7 6 বাইট

@ বুদ্ধিমানের জন্য 1 টি বাইট সংরক্ষণ করা হয়েছে

miS²²R

এটি অনলাইন চেষ্টা করুন!

ব্যাখ্যা:

miS²²R
m       // At each char in the input:
 iS²²   //   Prepend " " repeated 4 times
     R  // Rejoin with newlines  

সুন্দর কাজ. S²²জায়গায় পাশাপাশি কাজ করবে Sp4না, এটি এই ক্ষেত্রে আপনাকে কিছু সংরক্ষণ করে না। যার কথা বললে, আমি মনে করি আপনি পতাকাটি miS²²Rসরিয়ে ফেলতে R(মূলত miS²², তবে আগেই
নিউলাইনগুলিতে

1

UberGenes , 62 বাইট

আমাকে উবারজেনিসের সাথে এই চ্যালেঞ্জটি প্রবেশ করতে হয়েছিল, কারণ একটি খুব অনুরূপ প্রোগ্রাম (যেটি শুধুমাত্র একটি স্পেস সন্নিবেশ করিয়েছিল) আমি ভাষায় লিখেছি এমন প্রথম প্রোগ্রামগুলির মধ্যে একটি ছিল এবং দেখে মনে হয়েছিল যে এই উদ্দেশ্যে পরিবর্তন করা সহজ হবে।

=aA=p9=z4=cI=AC+a1-z1:pz=Ao:CA:Ii  =b5+b5-bA+a1=d3*d7:db=i0   

কিভাবে এটা কাজ করে:

=aA                                                         Set a to 61
                                                            (Begin main loop)
   =p9                                                      Set p to 9
      =z4                                                   z counts spaces
         =cI                                                Set c to 61
                                                            (Jumping to p jumps here)
            =AC                                             Put the space at position 61
                                                              at position a.
               +a1-z1                                       Move a right and decrement z
                     :pz                                    Jump to p if z is nonzero
                                                            (Jumping to d jumps here)
                        =Ao                                 Read a character to position a.
                           :CA                              Jump to position 32+3 if input
                                                              was nonzero.
                              :Ii                           Otherwise, jump to position 61,
                                                              causing the entire string
                                                              that begins there to be
                                                              printed before halting.
                                                            (This is position 32+3=35)
                                   =b5+b5                   Set b to 10 (newline).
                                         -bA                Subtract the input character to
                                                              compare it with newline.
                                            +a1             Move a right.
                                               =d3*d7       Set d to 21
                                                     :db    Jump to d if not newline.
                                                        =i0 Jump back to begin main loop.
(The 3 spaces at the end position a space character at position 61 so that, after =cI,
C refers to the space character--it will also be the first space printed.)

1

CJam , 11 বাইট

সংশোধনের জন্য @ চ্যালেঞ্জার 5 কে ধন্যবাদ

qN/{S4*\N}%

এটি অনলাইন চেষ্টা করুন!

ব্যাখ্যা

q              e#  Read whole input as a string with newlines
 N/            e#  Split at newlines, keeping empty pieces. Gives an array of strings
   {     }%    e#  Map this function over the array of strings
               e#  The current string is automatically pushed
    S4*        e#  Push a string of four spaces
       \       e#  Swap. Moves the original string after the four spaces
        N      e#  Push a newline
               e#  Implicity display stack contents

1
কাজ করে না abc\n\ndef। এটি ফিরে আসে ....abc\n....defকারণ %খালি উপাদানগুলি ত্যাগ করে। /পরিবর্তে আপনি বিভক্ত করতে ব্যবহার করতে চান , কারণ এটি খালি উপাদানগুলিকে রাখে।
ফলটি Esolanging

@ চ্যালেঞ্জার 5 ধন্যবাদ, সংশোধন!
লুইস মেন্ডো

1

জে-উবি , 17 16 বাইট

~:gsub&' '*4&/^/

ব্যাখ্যা

~:gsub           # :gsub with reversed arguments: 
                 # (f)[regex,sub,str] == str.gsub(regex, sub)
      &' '*4     # replace with four spaces
            &/^/ # match the start of each line

এটি সরাসরি (রুবিতে) অনুবাদ করে:

->s{s.gsub(/^/,' '*4)}


1

সি, 66 65 বাইট

p(){printf("    ");}f(char*s){for(p();*s;)putchar(*s++)-10||p();}

এটি অনলাইন চেষ্টা করুন!


ঝরঝরে সমাধান, তবে আপনি যেতে পারেন s;char*l;f(){while(getline(&l,&s,stdin)+1)printf("____%s",l);}যা 62 বাইট
খালেদ.কে

@ খালেদ.কে ধন্যবাদ, তবে এটি <stdio.h>(কারণ stdin) অন্তর্ভুক্ত না করে কাজ করবে বলে মনে হচ্ছে না ।
স্টেডিবক্স
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.