わいえむねっと

Contents
Categories
Calendar
2026/08
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
Monthly Archives
~2000/01
Recent Entries
RSS1.0
Templates
Information
Processed: 0.226 sec
Chashed: -
2007/07/24 Tue
今日の日付は数字の並び的にどうも、なにか、こう、しっくりするものがあると思ったら誕生日だったわけですが、それはそれとして。いつもと変わらず肉まんをかじりながらてくてく駅へと。 Perl覚え書き。
マッチ数について考えてみる。

$_ = "fooFooFOO";
print /foo/gi;                      # fooFooFOO

リストコンテキストだとマッチ文字列。

$_ = "fooFooFOO";
print scalar /foo/gi;               # 1

スカラコンテキストだとマッチ結果。

$_ = "fooFooFOO";
@foo = /foo/gi;
print @foo;                         # fooFooFOO
print $#foo;                        # 2
print scalar @foo;                  # 3

配列をスカラコンテキストとして評価すればマッチ数。
一時変数を省略するにはscalarのリストコンテキスト版が欲しいところだけれど、ないらしい。

$_ = "fooFooFOO";
print scalar map 0, /foo/gi;        # 3
print scalar map //, /foo/gi;       # 3
print scalar map '', /foo/gi;       # 3
print scalar map undef, /foo/gi;    # 3
print scalar map{0} /foo/gi;        # 3
print scalar map{//} /foo/gi;       # 3

ので、mapで代用してみたりとか。

$_ = "foobar";
s/(\w)(o*)(\w*)/"$1o*".(scalar map 0, $2=~\/o\/g).$3/eg;
print;                              # fo*2

でも、置換でマッチ数を使用しようとすると途中でメモリ変数がクリアされてしまったりとか。

$_ = "foobar";
s/(\w)(o*)(\w*)/"$1o*".do{scalar map 0, $2=~\/o\/g;}.$3/eg;
print;                              # fo*2bar

ので、doを使ってスコープをずらしたりとか。 overflow:autoの使用回数が増えてきたのでとりあえず変換対応してみたりなんだり。
2007/07/23 Mon
うどんもたれ。 Perl覚え書き。
前回までのあらすじ。
標準出力と標準エラー出力の両方が出力される場合、

open STDOUT, '>foo.txt';
open STDERR, '>foo.txt';
system 'foo';

としても、標準出力しか出力されない。
ただし、

open STDOUT, '>foo.txt';
open STDERR, '>bar.txt';
system 'foo';

のように、ファイルが別なら出力される。
この場合、

open STDOUT, '>foo.txt';
open STDERR, '>&STDOUT';
system 'foo';

とすれば、両方とも出力される。
他に、

system 'cmd', '/c', qq{"foo >foo.txt 2>&1"};

プロンプト経由にするとかしても可能。
Linuxであれば、

system 'bash', '-c', qq{"foo >foo.txt 2>&1"};

とか。
2007/07/22 Sun
体調が良くわかりません。
とりあえずそろそろ昼なので寝ます。 行頭の1.とか10.を①とか⑩に。

s/^((?:\s|\xE3\x80\x80)*)([\x31-\x32])?([\x30-\x39])\x2E/"$1\xE2\x91".chr(($2?(ord($2)-0x30)*10:0)+ord($3)+0x6F)/egm;

全角なら、

s/^((?:\s|\xE3\x80\x80)*)(?:\xEF\xBC([\x91-\x92]))?\xEF\xBC([\x90-\x99])\xEF\xBC\x8E/"$1\xE2\x91".chr(($2?(ord($2)-0x90)*10:0)+ord($3)+0x0F)/egm;

範囲外を除外するなら、

s/^((?:\s|\xE3\x80\x80)*)([\x31-\x39])\x2E/"$1\xE2\x91".chr(ord($2)+0x6F)/egm;
s/^((?:\s|\xE3\x80\x80)*)\x31([\x30-\x39])\x2E/"$1\xE2\x91".chr(ord($2)+0x79)/egm;
s/^((?:\s|\xE3\x80\x80)*)\x32\x30\x2E/$1\xE2\x91\xB3/gm;

行整形するなら、

s/^((?:\s|\xE3\x80\x80)*)(?:)([\x31-\x39])\x2E/"$1\xE2\x91".chr(ord($2)+0x6F)/egm;
s/^((?:\s|\xE3\x80\x80)*)\x31([\x30-\x39])\x2E/"$1\xE2\x91".chr(ord($2)+0x79)/egm;
s/^((?:\s|\xE3\x80\x80)*)\x32([\x30-\x30])\x2E/"$1\xE2\x91".chr(ord($2)+0x83)/egm;

一行でなら、

s/^((?:\s|\xE3\x80\x80)*)([\x31-\x39]|\x31[\x30-\x39]|\x32\x30)\x2E/"$1\xE2\x91".chr((length($2)==1?ord($2):(substr($2,0,1)eq"\x31"?10:20)+ord(substr($2,1,1)))+0x6F)/egm;

メモリ変数を無闇に使うなら、

s/^((?:\s|\xE3\x80\x80)*)(?:([\x31-\x39])|(\x31)([\x30-\x39])|(\x32)(\x30))\x2E/"$1\xE2\x91".chr(ord($2+$4+$6)+0x6F+($3?10:0)+($5?20:0))/egm;

とかなんとか。
ぼけと明後日の方向を目をやりながら。
2007/07/21 Sat
焼肉弁当と生姜焼き弁当。 ここ最近、毎週のように部屋の片づけをしなければと思っているようなそんなような。
しなければと思っているだけで全然していないわけですが。
なにかこう、他のことで忙しくなったりすると部屋の片付けがはかどるのにな!
本当に駄目な人ですね。はい。
2007/07/20 Fri
それはそれとして、肉まんを。 情報セキュリティマネジメントシステムやら環境経営システムやらの認証取得やら更新やらで関係者の慰労会。
よくよく考えてみると一般職は自分だけな気がしつつ、ウイスキーを淡々と。
たまにストレートを味わって飲むと良いですね。 とか思ったりしていられるのも最初のうちだけなわけですが。はい。
あとはいつものごとく。 22:51起床。
というか、ここはどこだ。
北野だ。
折り返す。
今日は解散が早くて助かったですね。
2007/07/19 Thu
肉まんです。
ダンボール肉まんです。
違います。
おはようございます。小坂那也です。(挨拶) 昼休みにコードを眺めていたら昼休みは休めといわれたので趣味の読書ですと返す。
そんな日常。
2007/07/18 Wed
寝たり起きたり寝たり悪夢で目覚めたりを繰り返して朝。
疲労困憊? 朝はまだ痛かったけれど帰る頃にはだいぶ頭の痛みもひいて。
2007/07/17 Tue
背負い投げる。 WindowsServer2008 beta3で遊んだりなんだり。(仕事です) ファイアウォール制御メモ。


『セキュリティが強化されたWindowsファイアウォール』はavfirewallで。

Introduction to Windows Firewall with Advanced Security
http://technet.mi​crosoft.co​m/en-us/windowsvis​ta/aa937624.a​spx
Configure a local or remote computer by using either the Windows Firewall with Advanced Security MMC snap-in or the netsh avfirewall command
雨が降っているのに傘を置いて帰るのはよくわかりません。
あと、電車の中で猛烈に寝すぎです。
疲労困憊?
2007/07/16 Mon
靴下が10足届きました。おはようございます。小坂那也です。(挨拶)
晴れたので隣駅までぶらぶらと。
無印良品の2FとM2Fをひたすら往復したりなんだり。 というか相変わらず頭痛です。
頭痛にしては浅いところが痛いというか、髪に触れただけで痛いというか、風が吹いただけでも痛いというか。
後頭神経痛か。
顎がずれたのを放置していたので、その際に神経を圧迫したとかそんなところかと。
年末年始の総腓骨神経麻痺に自律神経失調と、この人の神経は大丈夫なのですかね。
2007/07/15 Sun
引き続き台風につきヒキコモリ。 どうにも頭が痛い。
酒の飲みすぎかディスプレイの眺めすぎか姿勢が悪すぎか。
どれもか。