サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
WWDC24
rocco.hatenadiary.org
How to gram awk's regexp submatches? $echo "test4325363test" | awk "/(.*)([0-9]+)(.*)/ {print NUMBER HERE!}"とした場合に数字だけを表示したいそうですが、awk で RSTART, RLENGTH をうまく使うのは慣れが必要かもしれません。 echo "test4325363test" | awk ' match($0,/[0-9]+/) { print substr($0,RSTART,RLENGTH) } ' もちろん、gawk なら gensub() で後方参照ができますから、もっとスマートに記述できます。 gawk '{print gensub(/(.*)([0-9]+)(.*)/,"\\2","")}'
新しくプログラミング言語を覚えたいときに行うべき10の練習問題 | IDEA*IDEA さて、これを awk でやってみました。 しかも、gawk ではなく nawk でやっています。 三大賢者の偉業は凄いです。 いつの間にか設問 1 が変更になっていますが、変更後のものは FizzBuzz と同じですね。 なんらかの文字列を無限で表示する これは無限ループの練習でしょうか。実際のプログラムでは無限ループを作ることは多くないかもしれませんが、無限ループが作れることは言語としては重要です。 なぜなら、無限に動き続けることができなければ、チューリング完全にはなりません。 awk では以下のように書くことができます。 #! /usr/bin/nawk -f BEGIN { for (;;) { print "俺って天才!"; } } なんらかのカウントアップメッセージを1から100まで出すけど、
LL/Scripting/Programming/Litterate Programming それでもあろささんが例示した 三つのステージをたどった言語って思い浮かばないんですが。 強いて云えば Perl と云えなくもないけど。 (引用元の回答というわけではありません。あまり脈略もないです。) awk と Perl は昔から比較されることが多いのですが、awk は awk の道、Perl は Perl の道を歩んでいて、awk でできることは Perl でもできるものの、お互い良い距離を保った進化をしていると思っています。awk が完全に的を絞った言語ですが、Perl は (結果としてそうなちゃったのかもしれませんが) 汎用言語を目指しています。これは、Perl の "Whipaptitude" (サクサク) と "Manipulexity" (キッチリ) の絵を見たことがあれば、Perl
Ed Morton による getline の問題点の指摘 を翻訳してみました。少し強引なところはありますが、初心者が getline の罠にかかって comp.lang.awk に投稿して、また Ed を怒らすくらいなら読んでおいて損はないと思います。一方、awker であっても getline の回避方法を知っておいた方が良いので、ぜひ一読ください。ただし、翻訳が分かりにくいのは私のせいでもあるのですが、時々原文でも分かりにくい点があるので、両方を見比べて下さると助かります。 以下の要約は、getline の (間違った) 使用を繰り返さないため Ed Morton が書い たものであり、主に Arnold Robbins の "Effective Awk Programming" 第 3 版 (http://www.oreilly.com/catalog/awkprog3) のレビュ
#!/usr # AWK hl test # BEGIN and END are also matched as patterns BEGIN { p = 0; } /some pattern/ { p++; } # / inside brackets is not considered end of expression # a loose division operator (/) is not mismatched as a pattern. $1 =~ /[^abc/]def/ || b == 3 / 5 { gsub ( FILENAME ); } # TODO and FIXME also work in comments in Awk. # Also backslash in patterns works. /\/usr\/bin\/awk/ { print "This is
このページを最初にブックマークしてみませんか?
『日本 GNU AWK ユーザー会 0.2』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く