<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0"><channel><title>Latest comments for language 'sed' on doukaku.org</title><link>http://ja.doukaku.org/lang/sed/</link><description>Latest comments for language 'sed' on doukaku.org(long)</description><language>ja</language><lastBuildDate>Sat, 22 Nov 2008 19:44:06 -0000</lastBuildDate><item><title>emasaka's comment on '('と')'の対応
</title><link>http://ja.doukaku.org/comment/7988/</link><description>



&lt;a href="http://ja.doukaku.org/214/"&gt;&amp;#39;(&amp;#39;と&amp;#39;)&amp;#39;の対応&lt;/a&gt;
(&lt;a href="http://ja.doukaku.org/214/nested/"&gt;Nested&lt;/a&gt; 
 &lt;a href="http://ja.doukaku.org/214/flatten/"&gt;Flatten&lt;/a&gt;)


&lt;hr&gt;
  
&lt;hr&gt;
  
    &lt;table&gt;&lt;tr&gt;&lt;td class="linenos"&gt;&lt;pre&gt; 1
 2
 3
 4
 5
 6
 7
 8
 9
10&lt;/pre&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;div class="highlight"&gt;&lt;pre&gt;#!/bin/sed -f
s/[^\x28\x29]*//g
:a
s/\x28\x29//g
ta
/./{
  c False
  b
}
c True
&lt;/pre&gt;&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
    &lt;div align = "right" style="margin-right: 1em;"&gt;
      [&lt;a href="http://ja.doukaku.org/lang/sed/"&gt;
      sed
      &lt;/a&gt;]
      [&lt;a href="http://ja.doukaku.org/comment/7988/download/"&gt;
      download code
      &lt;/a&gt;]
      &lt;/a&gt;]
    &lt;/div&gt;
    &lt;hr&gt;
  

</description><guid>http://ja.doukaku.org/comment/7988/</guid></item><item><title>emasaka's comment on 漢数字で九九の表
</title><link>http://ja.doukaku.org/comment/7878/</link><description>



&lt;a href="http://ja.doukaku.org/212/"&gt;漢数字で九九の表&lt;/a&gt;
(&lt;a href="http://ja.doukaku.org/212/nested/"&gt;Nested&lt;/a&gt; 
 &lt;a href="http://ja.doukaku.org/212/flatten/"&gt;Flatten&lt;/a&gt;)


&lt;hr&gt;
  &lt;pre class='compact'&gt;sedでの罠は、正規表現の後方参照でした。
実行例。

$ echo | sed -nf kuku.sed
 　一 　二 　三 　四 　五 　六 　七 　八 　九
 　二 　四 　六 　八 一○ 一二 一四 一六 一八
 　三 　六 　九 一二 一五 一八 二一 二四 二七
 　四 　八 一二 一六 二○ 二四 二八 三二 三六
 　五 一○ 一五 二○ 二五 三○ 三五 四○ 四五
 　六 一二 一八 二四 三○ 三六 四二 四八 五四
 　七 一四 二一 二八 三五 四二 四九 五六 六三
 　八 一六 二四 三二 四○ 四八 五六 六四 七二
 　九 一八 二七 三六 四五 五四 六三 七二 八一
&lt;/pre&gt;
&lt;hr&gt;
  
    &lt;table&gt;&lt;tr&gt;&lt;td class="linenos"&gt;&lt;pre&gt; 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31&lt;/pre&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;div class="highlight"&gt;&lt;pre&gt;#!/bin/sed -nf
s/.*/i@o: i/
:row
  h
  s/@/:/
  :num
    s/:o/:oo/
    s/ i*$/&amp;amp;&amp;amp;/
    G
    s/\n//
    s/@.*//
  /ooooooooo/!b num
  # print
  s/^.*://
  s/iiiiiiiiii/x/g
  s/ i/ 　i/g
  s/x /x○ /g
  s/xxxxxxxxx\|iiiiiiiii/九/g
  s/xxxxxxxx\|iiiiiiii/八/g
  s/xxxxxxx\|iiiiiii/七/g
  s/xxxxxx\|iiiiii/六/g
  s/xxxxx\|iiiii/五/g
  s/xxxx\|iiii/四/g
  s/xxx\|iii/三/g
  s/xx\|ii/二/g
  s/x\|i/一/g
  p
  # next
  g
  s/.*/i&amp;amp;i/
/^iiiiiiiiii/!b row
&lt;/pre&gt;&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
    &lt;div align = "right" style="margin-right: 1em;"&gt;
      [&lt;a href="http://ja.doukaku.org/lang/sed/"&gt;
      sed
      &lt;/a&gt;]
      [&lt;a href="http://ja.doukaku.org/comment/7878/download/"&gt;
      download code
      &lt;/a&gt;]
      &lt;/a&gt;]
    &lt;/div&gt;
    &lt;hr&gt;
  

</description><guid>http://ja.doukaku.org/comment/7878/</guid></item><item><title>GEOJ's comment on 2^i * 3^j * 5^k なる整数
</title><link>http://ja.doukaku.org/comment/7699/</link><description>



&lt;a href="http://ja.doukaku.org/206/"&gt;2^i * 3^j * 5^k なる整数&lt;/a&gt;
(&lt;a href="http://ja.doukaku.org/206/nested/"&gt;Nested&lt;/a&gt; 
 &lt;a href="http://ja.doukaku.org/206/flatten/"&gt;Flatten&lt;/a&gt;)


&lt;hr&gt;
  &lt;pre class='compact'&gt;sedだと割り算のコストが高すぎるので、他のアルゴリズムでは難しそうです。
乗算＋ソートのために内部は2進で計算しています。&lt;/pre&gt;
&lt;hr&gt;
  
    &lt;table&gt;&lt;tr&gt;&lt;td class="linenos"&gt;&lt;pre&gt; 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29&lt;/pre&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;div class="highlight"&gt;&lt;pre&gt;#!/bin/sed
s/.*/lol/
: loop
    s/^\([^l]*\)l*o\([lo]*\)\(\n.*\)\?$/\1a\2\3\nx\2o\nx\2o+\2=\nx\2oo+\2=/
    : 2-&amp;gt;10
        s/[f-j]/#&amp;amp;/g
        s/[a-j][#l]/\U&amp;amp;/g
        y/AbBcCdDeEfFgGhHiIjJ/bcdefghijabcdefghij/
        s/^#/b/m
        s/#//g
        s/\([a-j]\)[Lo]/\1/
    /[a-j][lo]/ b 2-&amp;gt;10
    y/abcdefghij/0123456789/
    : add
        s/\([xo]l*\)l+\([lo]*\)l=/\U\1\E+\2=o/g
        s/X/xl/g
        y/LO/ol/
        s/l+\([lo]*\)o=/+\1=l/g
        s/o+\([lo]*\)\([lo]\)=/+\1=\2/g
        s/+=//g
    t add
    s/^x\([lo]*\)$/\U\1\Eo\1/gm
    y/LO/ll/
    : sort
        s/^\([lo]*\)\n\1$/\1/gm
        s/^\(\([lo]*\)l[lo]*\)\n\(\2o[lo]*\)$/\3\n\1/gm
    t sort
    s/^\(\(\w*\n\)\{99\}\w*\)\n.*$/\1/
/[lo]/ b loop
&lt;/pre&gt;&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
    &lt;div align = "right" style="margin-right: 1em;"&gt;
      [&lt;a href="http://ja.doukaku.org/lang/sed/"&gt;
      sed
      &lt;/a&gt;]
      [&lt;a href="http://ja.doukaku.org/comment/7699/download/"&gt;
      download code
      &lt;/a&gt;]
      &lt;/a&gt;]
    &lt;/div&gt;
    &lt;hr&gt;
  

</description><guid>http://ja.doukaku.org/comment/7699/</guid></item><item><title>emasaka's comment on LL Golf Hole 8 - 横向きのピラミッドを作る
</title><link>http://ja.doukaku.org/comment/7416/</link><description>



&lt;a href="http://ja.doukaku.org/203/"&gt;LL Golf Hole 8 - 横向きのピラミッドを作る&lt;/a&gt;
(&lt;a href="http://ja.doukaku.org/203/nested/"&gt;Nested&lt;/a&gt; 
 &lt;a href="http://ja.doukaku.org/203/flatten/"&gt;Flatten&lt;/a&gt;)


&lt;hr&gt;
  &lt;p&gt;1桁限定で72B。&lt;/p&gt;

&lt;hr&gt;
  
    &lt;table&gt;&lt;tr&gt;&lt;td class="linenos"&gt;&lt;pre&gt; 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11&lt;/pre&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;div class="highlight"&gt;&lt;pre&gt;s/^/\n/
:a
y/987654321/876543210/
s/^/*/
P
/0/!ba
s/\n0//
:b
s/.//
p
tb
&lt;/pre&gt;&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
    &lt;div align = "right" style="margin-right: 1em;"&gt;
      [&lt;a href="http://ja.doukaku.org/lang/sed/"&gt;
      sed
      &lt;/a&gt;]
      [&lt;a href="http://ja.doukaku.org/comment/7416/download/"&gt;
      download code
      &lt;/a&gt;]
      &lt;/a&gt;]
    &lt;/div&gt;
    &lt;hr&gt;
  

</description><guid>http://ja.doukaku.org/comment/7416/</guid></item><item><title>shinh's comment on LL Golf Hole 5 - 最上位の桁を数え上げる
</title><link>http://ja.doukaku.org/comment/7374/</link><description>



&lt;a href="http://ja.doukaku.org/200/"&gt;LL Golf Hole 5 - 最上位の桁を数え上げる&lt;/a&gt;
(&lt;a href="http://ja.doukaku.org/200/nested/"&gt;Nested&lt;/a&gt; 
 &lt;a href="http://ja.doukaku.org/200/flatten/"&gt;Flatten&lt;/a&gt;)


&lt;hr&gt;
  &lt;p&gt;Count down していく方が短くなりそう。 55B 。&lt;/p&gt;

&lt;hr&gt;
  
    &lt;table&gt;&lt;tr&gt;&lt;td class="linenos"&gt;&lt;pre&gt;1
2
3
4
5
6
7
8&lt;/pre&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;div class="highlight"&gt;&lt;pre&gt;h
:
s/\n.*//
y/987654321/876543210/
s/^00/9/
G
h
/^0/!b
&lt;/pre&gt;&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
    &lt;div align = "right" style="margin-right: 1em;"&gt;
      [&lt;a href="http://ja.doukaku.org/lang/sed/"&gt;
      sed
      &lt;/a&gt;]
      [&lt;a href="http://ja.doukaku.org/comment/7374/download/"&gt;
      download code
      &lt;/a&gt;]
      &lt;/a&gt;]
    &lt;/div&gt;
    &lt;hr&gt;
  

</description><guid>http://ja.doukaku.org/comment/7374/</guid></item><item><title>emasaka's comment on LL Golf Hole 7 - バイト数を読みやすくする
</title><link>http://ja.doukaku.org/comment/7335/</link><description>



&lt;a href="http://ja.doukaku.org/202/"&gt;LL Golf Hole 7 - バイト数を読みやすくする&lt;/a&gt;
(&lt;a href="http://ja.doukaku.org/202/nested/"&gt;Nested&lt;/a&gt; 
 &lt;a href="http://ja.doukaku.org/202/flatten/"&gt;Flatten&lt;/a&gt;)


&lt;hr&gt;
  &lt;p&gt;81B。&lt;/p&gt;

&lt;hr&gt;
  
    &lt;table&gt;&lt;tr&gt;&lt;td class="linenos"&gt;&lt;pre&gt;1
2
3
4
5
6&lt;/pre&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;div class="highlight"&gt;&lt;pre&gt;/^..\?.\?$/b
s/$/.0kMGT/
:a
s/\(.\)\(.\)..\...\(.\)/\1.\2\3/
ta
s/\(\...\).*/\1/
&lt;/pre&gt;&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
    &lt;div align = "right" style="margin-right: 1em;"&gt;
      [&lt;a href="http://ja.doukaku.org/lang/sed/"&gt;
      sed
      &lt;/a&gt;]
      [&lt;a href="http://ja.doukaku.org/comment/7335/download/"&gt;
      download code
      &lt;/a&gt;]
      &lt;/a&gt;]
    &lt;/div&gt;
    &lt;hr&gt;
  

</description><guid>http://ja.doukaku.org/comment/7335/</guid></item><item><title>emasaka's comment on LL Golf Hole 6 - 10進数を2進数に基数変換する
</title><link>http://ja.doukaku.org/comment/7308/</link><description>



&lt;a href="http://ja.doukaku.org/201/"&gt;LL Golf Hole 6 - 10進数を2進数に基数変換する&lt;/a&gt;
(&lt;a href="http://ja.doukaku.org/201/nested/"&gt;Nested&lt;/a&gt; 
 &lt;a href="http://ja.doukaku.org/201/flatten/"&gt;Flatten&lt;/a&gt;)


&lt;hr&gt;
  &lt;p&gt;こっちのほうが短いですね。&lt;/p&gt;

&lt;hr&gt;
  
    &lt;table&gt;&lt;tr&gt;&lt;td class="linenos"&gt;&lt;pre&gt;1
2
3&lt;/pre&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;div class="highlight"&gt;&lt;pre&gt;s/\(.*\) \+\(.*\)/echo &amp;quot;obase=\2;\1&amp;quot;|bc/e
t
s/.*/echo &amp;quot;obase=2;&amp;amp;&amp;quot;|bc/e
&lt;/pre&gt;&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
    &lt;div align = "right" style="margin-right: 1em;"&gt;
      [&lt;a href="http://ja.doukaku.org/lang/sed/"&gt;
      sed
      &lt;/a&gt;]
      [&lt;a href="http://ja.doukaku.org/comment/7308/download/"&gt;
      download code
      &lt;/a&gt;]
      &lt;/a&gt;]
    &lt;/div&gt;
    &lt;hr&gt;
  

</description><guid>http://ja.doukaku.org/comment/7308/</guid></item><item><title>emasaka's comment on LL Golf Hole 6 - 10進数を2進数に基数変換する
</title><link>http://ja.doukaku.org/comment/7273/</link><description>



&lt;a href="http://ja.doukaku.org/201/"&gt;LL Golf Hole 6 - 10進数を2進数に基数変換する&lt;/a&gt;
(&lt;a href="http://ja.doukaku.org/201/nested/"&gt;Nested&lt;/a&gt; 
 &lt;a href="http://ja.doukaku.org/201/flatten/"&gt;Flatten&lt;/a&gt;)


&lt;hr&gt;
  &lt;p&gt;外部コマンドを使って楽するとこんな感じ。ほとんど単なるsh。&lt;/p&gt;
&lt;p&gt;標準入力に「10」とか食わせると2進変換、「10 8」のように空白で区切って基数を付けるとその基数で変換。&lt;/p&gt;

&lt;hr&gt;
  
    &lt;table&gt;&lt;tr&gt;&lt;td class="linenos"&gt;&lt;pre&gt;1
2&lt;/pre&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;div class="highlight"&gt;&lt;pre&gt;/\(.*\) \+\(.*\)/{s//echo &amp;quot;obase=\2;\1&amp;quot;|bc/e;b}
s/.*/echo &amp;quot;obase=2;&amp;amp;&amp;quot;|bc/e
&lt;/pre&gt;&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
    &lt;div align = "right" style="margin-right: 1em;"&gt;
      [&lt;a href="http://ja.doukaku.org/lang/sed/"&gt;
      sed
      &lt;/a&gt;]
      [&lt;a href="http://ja.doukaku.org/comment/7273/download/"&gt;
      download code
      &lt;/a&gt;]
      &lt;/a&gt;]
    &lt;/div&gt;
    &lt;hr&gt;
  

</description><guid>http://ja.doukaku.org/comment/7273/</guid></item><item><title>emasaka's comment on LL Golf Hole 6 - 10進数を2進数に基数変換する
</title><link>http://ja.doukaku.org/comment/7272/</link><description>



&lt;a href="http://ja.doukaku.org/201/"&gt;LL Golf Hole 6 - 10進数を2進数に基数変換する&lt;/a&gt;
(&lt;a href="http://ja.doukaku.org/201/nested/"&gt;Nested&lt;/a&gt; 
 &lt;a href="http://ja.doukaku.org/201/flatten/"&gt;Flatten&lt;/a&gt;)


&lt;hr&gt;
  &lt;p&gt;無駄にsedで実装してみます。標準入力。2進のみ。&lt;/p&gt;
&lt;p&gt;かなりダサいので誰か短くしてください。&lt;/p&gt;

&lt;hr&gt;
  
    &lt;table&gt;&lt;tr&gt;&lt;td class="linenos"&gt;&lt;pre&gt; 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41&lt;/pre&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;div class="highlight"&gt;&lt;pre&gt;#!/bin/sed -f
s/^/@/
:a
/@0\?$/{s///;b}
/[02468]$/s/.*@/0&amp;amp;/
/[13579]$/s/.*@/1&amp;amp;/
s/@/&amp;amp;#/
:b
/#1$/{
  s///
  ba
}
/#10/{s//5#/;bb}
/#11/{s//5#1/;bb}
/#12/{s//6#/;bb}
/#13/{s//6#1/;bb}
/#14/{s//7#/;bb}
/#15/{s//7#1/;bb}
/#16/{s//8#/;bb}
/#17/{s//8#1/;bb}
/#18/{s//9#/;bb}
/#19/{s//9#1/;bb}
/#[3579]/{
  h
  s/.*#\(.\)*/\1/
  y/3579/1234/
  G
  /#.$/{s/\(.\)\n\(.*\)#./\2\1/;ba}
  s/\(.\)\n\(.*\)#./\2\1#1/
  bb
}
/#[02468]/{
  h
  s/.*#\(.\).*/\1/
  y/02468/01234/
  G
  s/\(.\)\n\(.*\)#./\2\1#/
}
/#./bb
s/#//
ba
&lt;/pre&gt;&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
    &lt;div align = "right" style="margin-right: 1em;"&gt;
      [&lt;a href="http://ja.doukaku.org/lang/sed/"&gt;
      sed
      &lt;/a&gt;]
      [&lt;a href="http://ja.doukaku.org/comment/7272/download/"&gt;
      download code
      &lt;/a&gt;]
      &lt;/a&gt;]
    &lt;/div&gt;
    &lt;hr&gt;
  

</description><guid>http://ja.doukaku.org/comment/7272/</guid></item><item><title>emasaka's comment on 文字列の反転(括弧の対応を保存)
</title><link>http://ja.doukaku.org/comment/7222/</link><description>



&lt;a href="http://ja.doukaku.org/70/"&gt;文字列の反転(括弧の対応を保存)&lt;/a&gt;
(&lt;a href="http://ja.doukaku.org/70/nested/"&gt;Nested&lt;/a&gt; 
 &lt;a href="http://ja.doukaku.org/70/flatten/"&gt;Flatten&lt;/a&gt;)


&lt;hr&gt;
  &lt;p&gt;文字列にコントロールコードが入っていないこと前提。&lt;/p&gt;

&lt;hr&gt;
  
    &lt;table&gt;&lt;tr&gt;&lt;td class="linenos"&gt;&lt;pre&gt; 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21&lt;/pre&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;div class="highlight"&gt;&lt;pre&gt;#!/bin/sed -f
:paren
s/(\([^][(){}]*\))/\x01\1\x02/g;
t paren
s/{\([^][(){}]*\)}/\x03\1\x04/g;
t paren
s/\[\([^][(){}]*\)\]/\x05\1\x06/g;
t paren

s/\x01/)/g;
s/\x02/(/g;
s/\x03/}/g;
s/\x04/{/g;
s/\x05/]/g;
s/\x06/[/g;

s/$/\n/
:reverse
s/^\(.\)\(.*\n\)\(.*\)$/\2\1\3/
t reverse
s/\n//
&lt;/pre&gt;&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
    &lt;div align = "right" style="margin-right: 1em;"&gt;
      [&lt;a href="http://ja.doukaku.org/lang/sed/"&gt;
      sed
      &lt;/a&gt;]
      [&lt;a href="http://ja.doukaku.org/comment/7222/download/"&gt;
      download code
      &lt;/a&gt;]
      &lt;/a&gt;]
    &lt;/div&gt;
    &lt;hr&gt;
  

</description><guid>http://ja.doukaku.org/comment/7222/</guid></item><item><title>emasaka's comment on 仲間はずれの判定
</title><link>http://ja.doukaku.org/comment/7218/</link><description>



&lt;a href="http://ja.doukaku.org/53/"&gt;仲間はずれの判定&lt;/a&gt;
(&lt;a href="http://ja.doukaku.org/53/nested/"&gt;Nested&lt;/a&gt; 
 &lt;a href="http://ja.doukaku.org/53/flatten/"&gt;Flatten&lt;/a&gt;)


&lt;hr&gt;
  &lt;p&gt;「echo '111111' | sed -f nakama.sed 」や「echo '111211' | sed -f nakama.sed」のように使います。&lt;/p&gt;

&lt;hr&gt;
  
    &lt;table&gt;&lt;tr&gt;&lt;td class="linenos"&gt;&lt;pre&gt;1
2
3
4
5
6
7&lt;/pre&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;div class="highlight"&gt;&lt;pre&gt;s/^\(.\)\1*$/homo \1/
t
s/^\(.\)\1*\(.\)\1*$/quasi-homo \1 \2/
t
s/^\(.\)\(.\)\2*$/quasi-homo \2 \1/
t
c hetero
&lt;/pre&gt;&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
    &lt;div align = "right" style="margin-right: 1em;"&gt;
      [&lt;a href="http://ja.doukaku.org/lang/sed/"&gt;
      sed
      &lt;/a&gt;]
      [&lt;a href="http://ja.doukaku.org/comment/7218/download/"&gt;
      download code
      &lt;/a&gt;]
      &lt;/a&gt;]
    &lt;/div&gt;
    &lt;hr&gt;
  

</description><guid>http://ja.doukaku.org/comment/7218/</guid></item><item><title>emasaka's comment on ファイル内の重複行削除(後優先)
</title><link>http://ja.doukaku.org/comment/7220/</link><description>



&lt;a href="http://ja.doukaku.org/66/"&gt;ファイル内の重複行削除(後優先)&lt;/a&gt;
(&lt;a href="http://ja.doukaku.org/66/nested/"&gt;Nested&lt;/a&gt; 
 &lt;a href="http://ja.doukaku.org/66/flatten/"&gt;Flatten&lt;/a&gt;)


&lt;hr&gt;
  
&lt;hr&gt;
  
    &lt;table&gt;&lt;tr&gt;&lt;td class="linenos"&gt;&lt;pre&gt; 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11&lt;/pre&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;div class="highlight"&gt;&lt;pre&gt;#!/bin/sed -nf
H
x
s/\n\([^\n]*\)\n\1$/\n\1/
s/\n\([^\n]*\)\n\(.*\)\n\1$/\n\2\n\1/
x
${
    g
    s/^\n//
    p
}
&lt;/pre&gt;&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
    &lt;div align = "right" style="margin-right: 1em;"&gt;
      [&lt;a href="http://ja.doukaku.org/lang/sed/"&gt;
      sed
      &lt;/a&gt;]
      [&lt;a href="http://ja.doukaku.org/comment/7220/download/"&gt;
      download code
      &lt;/a&gt;]
      &lt;/a&gt;]
    &lt;/div&gt;
    &lt;hr&gt;
  

</description><guid>http://ja.doukaku.org/comment/7220/</guid></item><item><title>emasaka's comment on 重複する要素を取り除く
</title><link>http://ja.doukaku.org/comment/7219/</link><description>



&lt;a href="http://ja.doukaku.org/56/"&gt;重複する要素を取り除く&lt;/a&gt;
(&lt;a href="http://ja.doukaku.org/56/nested/"&gt;Nested&lt;/a&gt; 
 &lt;a href="http://ja.doukaku.org/56/flatten/"&gt;Flatten&lt;/a&gt;)


&lt;hr&gt;
  &lt;p&gt;echo '314159265' | sed -f onlyunique.sed
のように使います。&lt;/p&gt;

&lt;hr&gt;
  
    &lt;table&gt;&lt;tr&gt;&lt;td class="linenos"&gt;&lt;pre&gt;1
2
3
4
5&lt;/pre&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;div class="highlight"&gt;&lt;pre&gt;s/$/#/
:loop
s/\(.\)\(.*\)\1\(.*\)$/\2\3\1/
t loop
s/#.*//
&lt;/pre&gt;&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
    &lt;div align = "right" style="margin-right: 1em;"&gt;
      [&lt;a href="http://ja.doukaku.org/lang/sed/"&gt;
      sed
      &lt;/a&gt;]
      [&lt;a href="http://ja.doukaku.org/comment/7219/download/"&gt;
      download code
      &lt;/a&gt;]
      &lt;/a&gt;]
    &lt;/div&gt;
    &lt;hr&gt;
  

</description><guid>http://ja.doukaku.org/comment/7219/</guid></item><item><title>emasaka's comment on LL Golf Hole 5 - 最上位の桁を数え上げる
</title><link>http://ja.doukaku.org/comment/7161/</link><description>



&lt;a href="http://ja.doukaku.org/200/"&gt;LL Golf Hole 5 - 最上位の桁を数え上げる&lt;/a&gt;
(&lt;a href="http://ja.doukaku.org/200/nested/"&gt;Nested&lt;/a&gt; 
 &lt;a href="http://ja.doukaku.org/200/flatten/"&gt;Flatten&lt;/a&gt;)


&lt;hr&gt;
  &lt;p&gt;標準入力。&lt;/p&gt;

&lt;hr&gt;
  
    &lt;table&gt;&lt;tr&gt;&lt;td class="linenos"&gt;&lt;pre&gt; 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13&lt;/pre&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;div class="highlight"&gt;&lt;pre&gt;#!/bin/sed -nf
x
:a
s/$/0/
:b
p
G
/^\(.*\)\n\1$/b
s/\n.*//
/^9/{s//1/;ba}
y/12345678/23456789/
s/^0/1/
bb
&lt;/pre&gt;&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
    &lt;div align = "right" style="margin-right: 1em;"&gt;
      [&lt;a href="http://ja.doukaku.org/lang/sed/"&gt;
      sed
      &lt;/a&gt;]
      [&lt;a href="http://ja.doukaku.org/comment/7161/download/"&gt;
      download code
      &lt;/a&gt;]
      &lt;/a&gt;]
    &lt;/div&gt;
    &lt;hr&gt;
  

</description><guid>http://ja.doukaku.org/comment/7161/</guid></item><item><title>eban's comment on LL Golf Hole 2 - 文字列に含まれる単語の最初の文字を大文字にする
</title><link>http://ja.doukaku.org/comment/6955/</link><description>



&lt;a href="http://ja.doukaku.org/196/"&gt;LL Golf Hole 2 - 文字列に含まれる単語の最初の文字を大文字にする&lt;/a&gt;
(&lt;a href="http://ja.doukaku.org/196/nested/"&gt;Nested&lt;/a&gt; 
 &lt;a href="http://ja.doukaku.org/196/flatten/"&gt;Flatten&lt;/a&gt;)


&lt;hr&gt;
  &lt;p&gt;GNU sed版&lt;/p&gt;

&lt;hr&gt;
  
    &lt;table&gt;&lt;tr&gt;&lt;td class="linenos"&gt;&lt;pre&gt;1&lt;/pre&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;div class="highlight"&gt;&lt;pre&gt;sed &amp;#39;s/\b./\U&amp;amp;/g&amp;#39;
&lt;/pre&gt;&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
    &lt;div align = "right" style="margin-right: 1em;"&gt;
      [&lt;a href="http://ja.doukaku.org/lang/sed/"&gt;
      sed
      &lt;/a&gt;]
      [&lt;a href="http://ja.doukaku.org/comment/6955/download/"&gt;
      download code
      &lt;/a&gt;]
      &lt;/a&gt;]
    &lt;/div&gt;
    &lt;hr&gt;
  

</description><guid>http://ja.doukaku.org/comment/6955/</guid></item><item><title>emasaka's comment on LL Golf Hole 2 - 文字列に含まれる単語の最初の文字を大文字にする
</title><link>http://ja.doukaku.org/comment/6927/</link><description>



&lt;a href="http://ja.doukaku.org/196/"&gt;LL Golf Hole 2 - 文字列に含まれる単語の最初の文字を大文字にする&lt;/a&gt;
(&lt;a href="http://ja.doukaku.org/196/nested/"&gt;Nested&lt;/a&gt; 
 &lt;a href="http://ja.doukaku.org/196/flatten/"&gt;Flatten&lt;/a&gt;)


&lt;hr&gt;
  &lt;p&gt;GNU sedで確認しました。&lt;/p&gt;

&lt;hr&gt;
  
    &lt;table&gt;&lt;tr&gt;&lt;td class="linenos"&gt;&lt;pre&gt; 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11&lt;/pre&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;div class="highlight"&gt;&lt;pre&gt;:a
/\&amp;lt;[a-z].*/{
s//\n&amp;amp;/
h
s/.*\n\(.\).*/\1/
y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/
H
g
s/\n.\(.*\)\n\(.\)$/\2\1/
b a
}
&lt;/pre&gt;&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
    &lt;div align = "right" style="margin-right: 1em;"&gt;
      [&lt;a href="http://ja.doukaku.org/lang/sed/"&gt;
      sed
      &lt;/a&gt;]
      [&lt;a href="http://ja.doukaku.org/comment/6927/download/"&gt;
      download code
      &lt;/a&gt;]
      &lt;/a&gt;]
    &lt;/div&gt;
    &lt;hr&gt;
  

</description><guid>http://ja.doukaku.org/comment/6927/</guid></item><item><title>GEOJ's comment on コマンドライン引数の取得
</title><link>http://ja.doukaku.org/comment/5206/</link><description>



&lt;a href="http://ja.doukaku.org/118/"&gt;コマンドライン引数の取得&lt;/a&gt;
(&lt;a href="http://ja.doukaku.org/118/nested/"&gt;Nested&lt;/a&gt; 
 &lt;a href="http://ja.doukaku.org/118/flatten/"&gt;Flatten&lt;/a&gt;)


&lt;hr&gt;
  &lt;pre class='compact'&gt;最初の直感でsedでは絶対無理だと思ったのですが、卑怯な技を思いついたので書いて見ました。
GNU拡張とシェル、procファイルシステムの力で無理やり実現しています（互換性の保証無し）。
自己参照するので、ファイル名を固定する必要があります。
このソースではカレントディレクトリにshowargs.sedという名前で保存して
./showargs.sed a b c d
などと実行します。
カレントディレクトリ以外から実行できるようにするためには--file=の部分を絶対パスに直してください。
&lt;/pre&gt;
&lt;hr&gt;
  
    &lt;table&gt;&lt;tr&gt;&lt;td class="linenos"&gt;&lt;pre&gt;1
2
3
4
5
6
7&lt;/pre&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;div class="highlight"&gt;&lt;pre&gt;#!/bin/sed --file=showargs.sed

s%^.*$%sed -e &amp;#39;s/[[:cntrl:]]/ /g&amp;#39; /proc/$PPID/cmdline%
e
s/^.*sed --file=showargs\.sed .*showargs\.sed *//
s/ *$//
q
&lt;/pre&gt;&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
    &lt;div align = "right" style="margin-right: 1em;"&gt;
      [&lt;a href="http://ja.doukaku.org/lang/sed/"&gt;
      sed
      &lt;/a&gt;]
      [&lt;a href="http://ja.doukaku.org/comment/5206/download/"&gt;
      download code
      &lt;/a&gt;]
      &lt;/a&gt;]
    &lt;/div&gt;
    &lt;hr&gt;
  

</description><guid>http://ja.doukaku.org/comment/5206/</guid></item><item><title>GEOJ's comment on ポーカーの役判定
</title><link>http://ja.doukaku.org/comment/5191/</link><description>



&lt;a href="http://ja.doukaku.org/121/"&gt;ポーカーの役判定&lt;/a&gt;
(&lt;a href="http://ja.doukaku.org/121/nested/"&gt;Nested&lt;/a&gt; 
 &lt;a href="http://ja.doukaku.org/121/flatten/"&gt;Flatten&lt;/a&gt;)


&lt;hr&gt;
  &lt;p&gt;その後、まじめにsedで書いてみました。こっちのほうがきれいかも。&lt;/p&gt;

&lt;hr&gt;
  
    &lt;table&gt;&lt;tr&gt;&lt;td class="linenos"&gt;&lt;pre&gt; 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41&lt;/pre&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;div class="highlight"&gt;&lt;pre&gt;#!/bin/sed -f

/^\([CDHS][A2-9TJQK]\)\{5\}$/!b
/\([CDHS][A2-9TJQK]\).*\1/b

/\(.\).\(\1.\)\{4\}/{
    s/^/X/
}

s/[CDHS]//g

s/\([2468TQK]\+\)\([A3579J]\+\)/\2\1/g
s/\([2468TQK]\+\)\([A3579J]\+\)/\2\1/

s/\([3478JQK]\+\)\([A2569T]\+\)/\2\1/g
s/\([3478JQK]\+\)\([A2569T]\+\)/\2\1/

s/\([5-8K]\+\)\([A2349TJQ]\+\)/\2\1/g
s/\([5-8K]\+\)\([A2349TJQ]\+\)/\2\1/

s/\([9TJQK]\+\)\([A2-8]\+\)/\2\1/g
s/\([9TJQK]\+\)\([A2-8]\+\)/\2\1/

/[2-5]$/y/A2345/9TJQK/
/[6-9]$/y/A23456789/56789TJQK/
/[TJ]$/y/A23456789TJ/3456789TJQK/
/Q$/y/A23456789TJQ/23456789TJQK/

s/^\(.\)\1\1\1K$\|^.KKKK$/Four of a kind/

s/\(.\)\1\+//g

s/^$/Full house/
s/^.$/Two pair/
s/^..$/Three of a kind/
s/^...$/One pair/
s/^[A9]TJQK$/Straight/
s/^.....$/No pair/
s/^XATJQK$/Royal flush/
s/^X9TJQK$/Straight flush/
s/^X.....$/Flush/
&lt;/pre&gt;&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
    &lt;div align = "right" style="margin-right: 1em;"&gt;
      [&lt;a href="http://ja.doukaku.org/lang/sed/"&gt;
      sed
      &lt;/a&gt;]
      [&lt;a href="http://ja.doukaku.org/comment/5191/download/"&gt;
      download code
      &lt;/a&gt;]
      &lt;/a&gt;]
    &lt;/div&gt;
    &lt;hr&gt;
  

</description><guid>http://ja.doukaku.org/comment/5191/</guid></item><item><title>？せんたくいた's comment on アルファベットの繰り上がり
</title><link>http://ja.doukaku.org/comment/2944/</link><description>



&lt;a href="http://ja.doukaku.org/21/"&gt;アルファベットの繰り上がり&lt;/a&gt;
(&lt;a href="http://ja.doukaku.org/21/nested/"&gt;Nested&lt;/a&gt; 
 &lt;a href="http://ja.doukaku.org/21/flatten/"&gt;Flatten&lt;/a&gt;)


&lt;hr&gt;
  &lt;pre class='compact'&gt;codegolfに慣れている人はもっと格好良く書けるんだろうな、と思いつつ
sed で succ 実装したよ記念。
sedは入力無いと動き始めないので、適当に改行でも叩いて下さい。
$ echo |./succ.sed 辺りでも可。

行の中身を捨てて「A」入れる
:loop
CV(=100)が終端なら抜ける。
終端を複製
終端にsucc
loopに戻る
&lt;/pre&gt;
&lt;hr&gt;
  
    &lt;table&gt;&lt;tr&gt;&lt;td class="linenos"&gt;&lt;pre&gt; 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43&lt;/pre&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;div class="highlight"&gt;&lt;pre&gt;#!/bin/sed -f

s/^.*$/A/

:loop
/CV$/q
s/[A-Z]*$/&amp;amp;,&amp;amp;/

:succ

:carry
s/Z\(_*\)$/_\1/
t carry
s/Y\(_*\)$/Z\1/
s/X\(_*\)$/Y\1/
s/W\(_*\)$/X\1/
s/V\(_*\)$/W\1/
s/U\(_*\)$/V\1/
s/T\(_*\)$/U\1/
s/S\(_*\)$/T\1/
s/R\(_*\)$/S\1/
s/Q\(_*\)$/R\1/
s/P\(_*\)$/Q\1/
s/O\(_*\)$/P\1/
s/N\(_*\)$/O\1/
s/M\(_*\)$/N\1/
s/L\(_*\)$/M\1/
s/K\(_*\)$/L\1/
s/J\(_*\)$/K\1/
s/I\(_*\)$/J\1/
s/H\(_*\)$/I\1/
s/G\(_*\)$/H\1/
s/F\(_*\)$/G\1/
s/E\(_*\)$/F\1/
s/D\(_*\)$/E\1/
s/C\(_*\)$/D\1/
s/B\(_*\)$/C\1/
s/A\(_*\)$/B\1/

s/,_/,A_/
y/_/A/

b loop
&lt;/pre&gt;&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
    &lt;div align = "right" style="margin-right: 1em;"&gt;
      [&lt;a href="http://ja.doukaku.org/lang/sed/"&gt;
      sed
      &lt;/a&gt;]
      [&lt;a href="http://ja.doukaku.org/comment/2944/download/"&gt;
      download code
      &lt;/a&gt;]
      &lt;/a&gt;]
    &lt;/div&gt;
    &lt;hr&gt;
  

</description><guid>http://ja.doukaku.org/comment/2944/</guid></item><item><title>？せんたくいた's comment on 与えられた文字列でピラミッド
</title><link>http://ja.doukaku.org/comment/2697/</link><description>



&lt;a href="http://ja.doukaku.org/52/"&gt;与えられた文字列でピラミッド&lt;/a&gt;
(&lt;a href="http://ja.doukaku.org/52/nested/"&gt;Nested&lt;/a&gt; 
 &lt;a href="http://ja.doukaku.org/52/flatten/"&gt;Flatten&lt;/a&gt;)


&lt;hr&gt;
  &lt;pre class='compact'&gt;\nをデリミタにしています。(\nh o g e)
1.1番目の項目を手前にコピー
2.ピラミッド一段上の形に合わせる
3.合わせたものが空白で埋まっていなければループ

最後に先頭の無駄な改行消してドン。
&lt;/pre&gt;
&lt;hr&gt;
  
    &lt;table&gt;&lt;tr&gt;&lt;td class="linenos"&gt;&lt;pre&gt; 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12&lt;/pre&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;div class="highlight"&gt;&lt;pre&gt;#!/bin/sed -f
s/ //g
s/./ &amp;amp;/g
s/^ /\n/

:loop
s/^\n[^\n]*/&amp;amp;&amp;amp;/
s/^\(\n *\)[^ ] /\1 /
s/\n/ \n/2
/^\n *\n/!b loop

s/^\n *\n//
&lt;/pre&gt;&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
    &lt;div align = "right" style="margin-right: 1em;"&gt;
      [&lt;a href="http://ja.doukaku.org/lang/sed/"&gt;
      sed
      &lt;/a&gt;]
      [&lt;a href="http://ja.doukaku.org/comment/2697/download/"&gt;
      download code
      &lt;/a&gt;]
      &lt;/a&gt;]
    &lt;/div&gt;
    &lt;hr&gt;
  

</description><guid>http://ja.doukaku.org/comment/2697/</guid></item></channel></rss>