Simple
Sand
Samples
プログラミング言語サンプル集
TOPへ
Hello World!(各言語のTOP)
(テキスト)全行左右反転
(テキスト)行シャッフル
(テキスト)ファイルのタブスペース変換
(テキスト)ファイルのスペースタブ変換
(テキスト)タブスペース変換(その2)
(テキスト)スペースタブ変換(その2)
(テキスト)ファイル行数を数える
(テキスト)列挙した数の合計を求める
(テキスト)各行の合計を求める
(テキスト)タブ区切り各データに関数適用
(テキスト)CSVファイル読み込み
(テキスト)ファイル先頭部分抽出
(バイナリ)ファイル読み込み
(バイナリ)ファイル書き込み
(バイナリ)バイナリファイル複写
(バイナリ)16進ダンプ
(バイナリ)8進ダンプ
(バイナリ)部分的に16進ダンプ
(ジェネレータ)数列を生成
(ジェネレータ)数列を生成(16進)
(ジェネレータ)任意バイナリファイル
(ジェネレータ)オール0バイナリファイル
(ジェネレータ)連続数値バイナリファイル
(ジェネレータ)ランダムバイナリファイル
(正規表現)正規表現を使う
(正規表現)置換する
(ファイル)カレントディレクトリ取得
(ファイル)ディレクトリ存在チェック
(ファイル)ファイル存在チェック
(ファイル)ディレクトリのファイル一覧
(ファイル)ファイル一覧再帰取得
(ファイル)ディレクトリ作成
(ファイル)ファイルの更新日時取得
(ファイル)ZIP圧縮
(ファイル)ZIP解凍
(ファイル名)パスからディレクトリ名取得
(ファイル名)パスからファイル名取得
(ファイル名)拡張子を取り除く
(ESC)エスケープシーケンス
(ESC)コンソール画面クリア
(日付時刻)今日の日付を得る
(日付時刻)現在の時刻を得る
(日付時刻)日付と時刻を得る
(日付時刻)基準日からの連続日付
乱数を使う
MD5(128bit)ハッシュ値を求める
(RDBMS)SQLiteへ接続する
(RDBMS)MySQLへ接続する
指定時間sleepさせる
シグナル(SIGNAL)を使う
スレッドを使う
(Excel)ブックを保存
(Excel)シートを追加する(末尾)
(Excel)セルに値を設定する
(Excel)セルの背景色を設定する
(Tk)Tkを使う
(GUI)GUIを使う
(画像)PNGファイルを生成

説明のないとってもシンプルなサンプルプログラム集
COBOL awk C言語 D言語 GO言語 Lua Vim
bash Perl Gauche Clojure CLISP EmacsLisp VimScript
tcsh Ruby Groovy Java C# VBScript JavaScript
Io言語 Python Erlang Scala VB.NET Excel/VBA PHP
Tcl Haskell OCaml PowerShell Windows Unix/Linux

Perl > 正規表現を使う

    re.pl

1
2
3
while(<>){
print if /(.)\1\1/;
}
$ seq 1000 | perl re.pl
111
222
333
444
555
666
777
888
999
1000
$

/[0]/1文字が0
/[0-9]/1文字が0,1,2,3,4,5,6,7,8,9のいずれか
/[02468]/1文字が偶数
/[BCD]/1文字がB,C,Dのいずれか
/[B-D]/1文字がB,C,Dのいずれか
/[0-2A-C]/1文字が0,1,2,A,B,Cのいずれか
/[^12]/1文字が1,2以外
/[ぁ-ん]/1文字がひらがなのいずれか
/[ァ-ン]/1文字がカタカナのいずれか
/\w/1文字が英数字
/\W/1文字が英数字以外
/\d/1文字が数字
/\D/1文字が数字以外
/\s/1文字が空白
/\S/1文字が空白以外
/./1文字が任意の1文字(改行文字以外の)
/\t/1文字がタブ
/\n/1文字が改行
/A*/Aが連続で0個以上
/A+/Aが連続で1個以上
/AB?/BがAの次に0個または1個あるか
/z{4}$/zが連続で4個あって、データ末尾か?
/z{3,}/zが連続で3個以上あるか?
/(ABC){2,4}2回以上4回以下のABCの繰り返しになっているか?
/(?:.)/()を記憶しない
/(?:a.b){1,3}/a.b a.ba.b a.ba.ba.b いずれかに一致
/\bABC\b/ABCが単語単位か?
/\Bあいう\B/あいうが文字列の一部か?
/\./.があるか?
/\\/\があるか?
/\*/*があるか?
/\?/?があるか?
/\+/+があるか?
/\^/^があるか?
/(HELLO).*\1/HELLOが行中にもう1回出現するか?
/(HELLO)(SEEU).*\2/SEEUが行中にもう1回出現するか?
$abc =~ tr/ABCDEFG/1234567/;それぞれAは1 Gは7に置き換える
$abc =~ tr/A-Z/a-z/;それぞれAはa Zはzに置き換える
$abc =~ s/ABCDEF/EFG/;ABCDEFをEFGに最初にマッチした文字列だけ置き換える
$abc =~ s/ABCDEF/EFG/g;行中のABCDEFをEFGに全部置き換える
$abc =~ s/ABCDEF//g;行中のABCDEFを全部削除する
  * 確認環境 Debian Linux(Wheezy)