僕の備忘録(PC、UN*X、ネットワーク関連が中心)なんです。
自分の書いたところは適当(な時とか)に書き換えますので御了承を。
$ echo ' > [[OK]p] so [[NG]p] sn > 4 s4 5 s5 > l4 l5 =o > l4 l5 !=n > ' | dc NG $ echo ' > [[OK]p] so [[NG]p] sn > 4 s4 4 s5 > l4 l5 =o > l4 l5 !=n > ' | dc OK
マクロの文字列を2つ、スタックから別々の(o,n)レジスタにセーブし、 比較する値をスタックからこれまたレジスタ(4,5)にセーブ。 値をレジスタからスタックに積み重ねて比較。等しければoレジスタの マクロ実行。 違っていればnレジスタ。
もちろん日本語の文字列リテラルも使えるっぽい。レジスタ名は駄目だったが。
あと、レジスタ名は英数字以外にも、記号もいくつか使えた。大文字小文字も区別する。
$ echo "[[同じ]p]sO[[違う]p]so5s45s5l4l5=Ol4l5!=o" | dc 同じ $ echo "[[同じ]p]s@[[違う]p]s%4s45s5l4l5=@l4l5!=%" | dc 違う
リンクはご自由にどうぞ。でもURLや内容が変った場合はあしからず。