|
Simple Sand Samples |
説明のないとってもシンプルなサンプルプログラム集
| 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
|
|
$ seq 1000 | perl re.pl
111
222
333
444
555
666
777
888
999
1000
$
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)