【モダン推奨】Perlについての質問箱 50箱目

■ このスレッドは過去ログ倉庫に格納されています
2012/01/21(土) 10:56:39.03
CGI についての質問は板違いです。WEB プログラミング板でどうぞ。
CGI と Perl の区別がつかない人も WEB プログラミング板に行ってください。
(WEB プログラミング板: http://hibari.2ch.net/php/ )

回答する際はモダンな方法でお願いします
(例 jcode.plではなくEncodeモジュールを使った方法)
理由はもう2012年です。いい加減2000年以前の方法はやめましょう。
最新のPerlを使うほうがかっこいいです。
いつまで勉強しないつもりですか?
過去にとらわれるのはもうやめです。進歩しませんよ。

このスレでは(CGI 以外の)純粋にPerlのみに関係する質問を取り扱っていこうと思います。
スレ違いの質問にはスルーか、速やかな誘導をお願いします。

"The duct tape of the Internet" こと、Perl についての質問箱です。
"There's more than one way to do it" ということで、
Perl の奥深さについて皆で語り合い、追求してまいりましょう。

http://www.perl.org/get.html
● 2011/10/30 現在の最新版: 5.14.2

▼ 前スレ
Perlについての質問箱 49箱目
http://toro.2ch.net/test/read.cgi/tech/1319953460/
リンク集は >>2-3辺り
Perl 日本語処理の基礎の基礎 >>4辺り


2012/04/17(火) 22:06:08.88
>>179
タスクのウィンドウが表示されなくなってうれしいものの、その他の
ウィンドウも一切表示されなくなりました ;_;
(D-SUB抜いて試しました)
2012/04/18(水) 03:18:24.23
一方、日本は...




瞳をとじた
2012/04/29(日) 00:38:07.87



そしてこのスレッドもクローズした
183デフォルトの名無しさん
垢版 |
2012/04/29(日) 06:35:31.99
再開
2012/04/29(日) 06:52:54.09

  ∧∧
  ( ゚Д゚ )∩
 ⊂   ノ
  /  0
  し´
えっ…と、
ここかな…、と
 ∧∧ ∧∧
∩゚Д゚≡゚Д゚ )
`ヽ     |)
  | __ |〜
  ∪  ∪
      ドスッ
  ∧∧.ミ. _
  (   )┌┴┴┐
  /   つ.再開│
〜   ./ └┬┬┘
 ∪∪    ││_ε3
     ゛゛゛゛
2012/04/29(日) 14:21:23.37
最近のPerlでOOP用ライブラリってどんなのが主流ですか?
2012/04/29(日) 14:23:06.27
Mooseだろ?

最近のライブラリでそれ以外使ってるの有るのか?
2012/04/29(日) 14:25:50.06
ありがとうございますMoose調べてきます
2012/04/29(日) 18:38:18.38
Mooseが重いと思ったらMouseとAny::Mooseの組合せで代用もよし
2012/04/29(日) 20:25:09.14
最初から Mouse 使ったほうが
190デフォルトの名無しさん
垢版 |
2012/05/15(火) 18:28:38.45
cpan でモジュールインストールしんたいんだけど
install やら make やら make install やら全部 OK
でたのに
perldoc -l インストールしたモジュール名
やるとそんなのないて怒られる。
なんで?
2012/05/15(火) 22:29:19.68
>>190
普通 perldoc -l DBI などは成功すると思うよ。
どうやって入れたの? モジュール名は?
192デフォルトの名無しさん
垢版 |
2012/05/16(水) 07:35:09.36
>>191
cpan>install Math::Vector::Real
でいれて
全部 make やら make install やら全部 OK と出たが
ないようだった。

cpanplus でインストールしてみたらいけたのだが原因がわからない。
193デフォルトの名無しさん
垢版 |
2012/05/16(水) 19:04:48.32
Regexp::Assembleでマッチした時って
後方参照使えるの?
2012/06/20(水) 00:40:13.88
perl 5.10.1 を使っています。
$str = "ABCD"; の時
@a = $str =~ /AB|CD/g;
を実行すると、@a = ( "AB", "CD" ) と2つの要素が返されますが、
@a = $str =~ /AB|BC/g;
だと、@a = ( "AB" ) しか帰ってきません。
(ABがマッチしたら、その次のCからサーチが始まるため)

@a に ("AB", "BC") と、マッチするものすべてを得たい場合、
どうすればよいでしょうか。

2012/06/20(水) 01:29:26.87
なんか面白そうなお題なのでとりあえず最悪くさいものを作ってみた
素晴らしい人がボロクソにけなしてくれると期待しつつ投げてみる

$str='ABCD';
{
my $tmp=$str;
while($tmp=~/AB|BC/){
push @a,$&;
$tmp = $&.$';
$tmp=~s/^.//;
}
}
print join' ',@a;
196194
垢版 |
2012/06/20(水) 02:51:53.45
>>194
場当たり的に色々試していたら
@a = $str =~ /(?=(AB|BC))/g;
で、(AB,BC) が取得できました。
(?= で、次の走査開始点を移動させないようにしたから、でしょうか?
2012/07/15(日) 14:22:38.65
一過性のモダンPerlはもう終わり。
らくだ本の発行によって本来のPerlへの回帰が始まっている。
2012/07/15(日) 14:36:07.64
本来のPerl=5.0でも動く範囲でしかコード書かない
2012/07/15(日) 16:03:33.45
そういえばPerl5のスレってないね?やっぱりまだPerlの方が使われてるのかな?
2012/07/20(金) 00:44:57.65
モダンPerl書いたひとはどうしてるの?最近見ないけど、やっぱりだめなの?
201デフォルトの名無しさん
垢版 |
2012/07/20(金) 06:04:14.97
まあソースをみて改良したりとか前向きな動機はほぼゼロで99.99%はこのメーカー
困らせてやれって開示請求なんだろうな。
2012/07/20(金) 23:17:21.71
モダンな奴はそもそもPerl使わないからな
2012/07/25(水) 02:06:14.30
USP(Universal Shell Programming)研究所は、UNIX/Linuxの基本思想である、
「小さな道具」(コマンド)を組み合わせて「問題を解決する」(シェルス
クリプト)手法の研究・普及を行っています。この開発手法(ユニケージ
開発手法)は、従来のウォーターフォール型開発や、オブジェクト指向言
語・データベースソフトを用いた開発手法と一線を画し、圧倒的な開発生産
性 圧倒的な柔軟性を特徴としています。

ttp://www.usp-lab.com/
2012/07/30(月) 19:45:03.06
本スレも、荒しに常駐されてぐだぐだだし、
WebProgの方も同じみたいに、スレ違いの会話が
ぐだぐだ続いて終了したし、終りかなあ。

ここのスレの方がまだ真面にperlの話をしてた気がするよ。
2012/07/30(月) 20:56:12.50
まあモダンには2つあって、ひとつはすぐに古くなるモダン。
もうひとつはいつまでも古くならないモダン。
おれは断然古くならないモダンのほうがいいな。
2012/07/30(月) 23:46:15.85
XSを使うと1年後に古くなるほうのモダンですか?
2012/07/30(月) 23:47:25.65
軟便スキー独りか知らんが、
韓国ネタのコピペしたり
hoge煽りしたり
ググれ煽りしたり

馬鹿じゃねーの?
2012/07/31(火) 00:19:41.40
そしてゆっくりモダンになっていく...
それが理想です
2012/07/31(火) 00:27:00.96
進歩というものは過去を捨てることではない。
過去に加えて積み上げるものなのだ。
2012/07/31(火) 01:28:15.89
荒しが950踏んで嬉々としてhoge禁止をテンプレに入れる姿が目に見える様だ
2012/08/04(土) 17:51:38.53
過去のソフトウェアと作法やインタフェースが異なる言い訳としてモダンと
いう用語を使うのはまずい。今までより苦労が増えるなら移行は進むはず
がない。
2012/08/05(日) 20:55:07.11
ところでこのスレが53箱目の続きってことでいいの?
2012/08/05(日) 20:56:46.40
すまん、53箱目の続きあった。“54目”になってたんで検索に引っかからなかったわ。
2012/08/06(月) 18:23:11.89
以下のように時刻と曜日が書かれたlogファイルがあります。

Jun 6 00:07:41 xxxxx
Aug 8 00:14:34 yyyyy
Aug 8 00:16:26 zzzzz

(以下略

現時刻から一時間前のログのみ抽出して、抽出したログの行数だけ出したいのですがこの処理って一行(ワンライナー)で書けますか?※重複とかは無視して単純に一時間分のログが引っこ抜ければ良いです。

詳しい人教えてください。
2012/08/06(月) 18:26:08.19
>>214
訂正
1時間前のログのみ抽出じゃ無くて一時間分のログを抽出です。

2012/08/06(月) 18:57:53.32
>>214
> この処理って一行(ワンライナー)で書けますか?
書けます。
2012/08/07(火) 18:06:48.10
>>216
やり方教えてください!
一時間前の日付時刻と現在の日付時刻を比較して条件を満たせば該当行を出力みたいなことをやれば良いとおもうんですが、どう書けば良いのかわかりません
2012/08/07(火) 18:12:29.44
横レス(別人)
$ perl -F'/[\s:]+/' -MTime::Local -lane 'BEGIN{ %m = map{uc $_, $i ++} qw(Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec);} next if ( time - timelocal @F[4,3,2,1], $m{uc $F[0]}, 2012 - 1900 ) > 3600 ; print ;' *txt

年は 2012 年を期待、 2013 年になったら知らん。
年跨ぎを念頭に入れるとなると log file の形式から作成しなおし。
win の人なら、シングルクォーテーションをダブルに
変えなきゃ動かんかも。
勉強したいのであれば、エポック秒、時間比較 perl あたりでググる。
2012/08/07(火) 18:20:05.07
>>218
あんた2012年の住人じゃないだろw
2012/08/07(火) 18:30:46.11
>>218
レスありがとうございます。
参考にさせてもらいます。
でも2013年以降も使えるのが理想ですが…
2012/08/07(火) 18:34:05.93
年跨ぎのケースを考え無くて良いなら、コードの2012を2013にすりゃいいだけ。
2012/08/08(水) 18:20:12.98
というより、「年」は全部今年として扱えばいい。
年が明けてから1時間はまともにログを拾えなくなるけど。
そもそもログデータに「年」の情報が入っていないんだから、
厳密に処理するのは無理だべ。
2012/08/08(水) 18:36:12.52
>>218に対して言ってるのなら、
最初からそれを念頭に書いてないか?
コードは既にそうなってるし、
説明文の方は質問者に向けたもんだし、
改造しやすいように除算は態々、2012 -1900 にして残してあるし。

それともtime関数に、年を除外するオプションでもあんの?
2012/08/08(水) 19:02:57.22
>>223
年が変わるごとに 2012 を 2013 だの 2014 だのに書き換えるの面倒だろうから
「年」のところはログの日付も現在の時間も全部localtimeの「今年」という前提で
扱えば毎年コード書き直さなくてもよくなるだろっていってるんだよボケ。
2012/08/08(水) 19:09:28.99
perl -F'/[\s:]+/' -MTime::Local -lane 'BEGIN{ %m = map{uc $_, $i ++} qw(Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec);} next if ( time - timelocal @F[4,3,2,1], $m{uc $F[0]}, ( localtime(time))[5] ) > 3600 ; print ;' *txt

こういう意味ねw、了解した。
2012/08/08(水) 19:17:05.60
で、試しに自分でも書いてみた。
LC_ALL=C perl -MTime::Piece -e '$lt=localtime;$ty=$lt->year;while(<>){next unless m/(\w+) +(\d+) +(\d+:\d+:\d+)/;$t=Time::Piece->strptime("$ty $1 $2 $3","%Y %b %d %H:%M:%S");$c++ if $lt-$t<3600}print "$c\n"' logfile
218の方がすっきりしてるか。なぜかうちの環境だとエラー吐いて動かなかったけど…。
(Day 'Jun' out of range 1..31 at -e line 1 て言われた)
LC_ALL=Cは環境によってはつけとかないとTime::Piece->strptime()がエラー吐くんで。
行数が知りたい、だったので行数出力にしたけど、該当行を全部出したいんだったら
$c++以降を print if $lt-$t<3600}' に置き換えれば218と同じ出力になる。
行数はwc使えばあとからでもわかるしね。
2012/08/08(水) 19:19:19.26
>>225
了解してくれてどうも。
俺の日本語がわかりにくかったのか…
2012/08/08(水) 19:28:58.56
>>226
> 218の方がすっきりしてるか。なぜかうちの環境だとエラー吐いて動かなかったけど…。
> (Day 'Jun' out of range 1..31 at -e line 1 て言われた)

なぜエラーが出たかわかった。自分でテスト用に切り出して作ったログファイルの
各行頭にスペースが入っていたからだった。(ありがち)
2012/08/08(水) 21:24:39.24
>>227
違う。料理の合間に、斜め読みでレスした俺が悪い。
2012/08/09(木) 03:59:05.87
perl -MTime::Piece -lE 'my $lt=localtime; my $ty=$lt->year ; while(<>){next unless m/(\w+) +(\d+) +(\d+:\d+:\d+)/;\
my $t=Time::Piece->strptime("$ty $1 $2 $3","%Y %b %d %H:%M:%S"); print q{#####} ; print ; print $lt ; print $t ; print $lt-$t }' log file
#####
Jun 6 00:07:41 xxxxx
Thu Aug 9 03:45:48 2012
Wed Jun 6 00:07:41 2012
5510287
#####
Aug 8 00:14:34 yyyyy
Thu Aug 9 03:45:48 2012
Wed Aug 8 00:14:34 2012
66674
#####
Aug 8 00:16:26 zzzzz
Thu Aug 9 03:45:48 2012
Wed Aug 8 00:16:26 2012
66562
#####
Aug 8 22:15:14 zzzzz
Thu Aug 9 03:45:48 2012
Wed Aug 8 22:15:14 2012
-12566

うちの環境だとTime::Pieceオブジェクトの除算が変だ。なんで?
2012/08/09(木) 05:09:37.92
>>230
あう〜。ホントだ。ウチでも同じだ。
Time::Piece->strptime()でTime::Pieceオブジェクトを作るとgmtimeベースになるっぽい。
ttp://digit.que.ne.jp/work/index.cgi?Perl%E3%83%A1%E3%83%A2%2FTime%3A%3APiece%E3%83%A2%E3%82%B8%E3%83%A5%E3%83%BC%E3%83%AB
だから引き算の結果がTZのoffset分ずれるのか…。strptime()でlocaltimeベースにするには…

$ LC_ALL=C perl -MTime::Piece -lE '$lt=localtime;$ty=$lt->year;while(<>){next unless m/(\w+) +(\d+) +(\d+:\d+:\d+)/;\
$t=localtime Time::Piece->strptime("$ty $1 $2 $3","%Y %b %d %H:%M:%S")->epoch;$t-=$lt->tzoffset;\
say q{#####};say $lt," = ",$lt->[Time::Piece::c_islocal];say $t," = ",$t->[Time::Piece::c_islocal];say $lt-$t}' logfile
#####
Thu Aug 9 04:57:20 2012 = 1
Wed Jun 6 00:07:41 2012 = 1
5546979
#####
Thu Aug 9 04:57:20 2012 = 1
Wed Aug 8 00:14:34 2012 = 1
103366
#####
Thu Aug 9 04:57:20 2012 = 1
Wed Aug 8 00:16:26 2012 = 1
103254
#####
Thu Aug 9 04:57:20 2012 = 1
Wed Aug 8 19:20:14 2012 = 1
34626

(こんな時間に何をやっているんだか)

もしくはstrptime()の方をいじらずに、
$lt=localtime; → $lt=gmtime;$lt+=localtime->tzoffset;
か…。gmtimeベースになっちゃうけど引き算の結果は正しくなる。
という訳で、けっこういろいろとメンドくさいもんですね。
2012/08/09(木) 08:02:26.85
同じぐらいの長さのワンライナーなのに
>>218がダサくて>>226がスタイリッシュに見えるのはなぜだろう
2012/08/09(木) 08:03:44.22
レスくれた人ありがとうございます>>214です。
まだperlは入門書読み終わった程度なので右も左も分かりませんが、教えて頂いたコードを参考に色々書き方を研究したいと思います。
2012/08/12(日) 12:31:10.61
入門書読み終えたばかりの初心者には組込みのlocaltime関数を教えてあげないよ
2012/08/13(月) 16:57:18.75
>>234
なにが言いたいのかわからん
2012/08/14(火) 00:43:26.35
ほら、俺ってサ
意外にすいすいしいヤツ
だからサ
2012/08/14(火) 23:54:42.42
初心者には localtime の方が便利な件
2012/08/15(水) 05:40:02.45
>>234,>>237
既に>>225が提示してるだろ?
学習するかは質問者さんの勝手。

>>232
目医者行け。
266氏を晒す訳じゃないが、ワンライナにwhile(<>){}直接埋め込んでる時点で
スタイリッシュじゃない。

225に相当するコードをTime::Pieceで書いた場合、
perl -F'\s+' -MTime::Piece -lanE 'state $lt = localtime; next if $lt - localtime( Time::Piece->strptime((join " ", $lt->year,@F[0..2]),"%Y %b %d %H:%M:%S")) > 3600; say'
226に略
perl -F'\s+' -MTime::Piece -lanE 'state $lt = localtime; $c++ if $lt - localtime( Time::Piece->strptime((join " ", $lt->year,@F[0..2]),"%Y %b %d %H:%M:%S")) < 3600;}{ say $c'
2012/08/15(水) 16:15:51.26
>>238
おおうスタイリッシュ。
state とか使ったことなかったけど便利そうだな。参考にさせていただきます。
ワンライナーはあんまし書かないのもあってオプションも -i -n -p -e くらいしか
普段使ってなかったりしますんで。-E すら滅多に使わないな…。nもpもなしに
while(<>)埋め込むのもループの前後で処理が必要な時とかは普通にやってるし。
その程度のスキルでもとりあえず動くものは書けるってのがPerlのメリットでもあり
欠点でもあると…まあこの場合メリットということで。TMTOWTDI。(覚えづらいよなこれ)
2012/08/16(木) 22:01:16.60
なんで隔離スレで真面目に質問箱してんのよw

>>233
コード研究するんだったら、B::Deparseは必須。
% perl -MO=Deparse -lane '}{ print $.'
BEGIN { $/ = "\n"; $\ = "\n"; }
LINE: while (defined($_ = <ARGV>)) {
 chomp $_;
 our(@F) = split(' ', $_, 0);
}
{
 print $.;
}
-e syntax OK
調べたいコードのオプションの先頭に、-MO=Deparseくっつけるだけ。


それにしても、バルサン炊いたみたいに、人がいなくなったな本スレと初心者スレ。
実際の所は、ハイエナが肉に夢中になってるだけだろうけど。
2012/08/19(日) 22:14:32.47
初めてのPerl第6版とPerl5.16.1のことだね。
Unicodeサポートの問題に今頃気づいたって読める。
第5版のときはまだ気づいていなかったのかな?
まあ、そんときは使ってなかったんだろうけどな。
2012/08/20(月) 05:51:33.20
今上天皇侮辱発言の祭りが落ち着いたから、戻って来たぞゴキブリ。
でも、まあ、5割くらい減ったんじゃねーかな?
2012/08/20(月) 22:17:22.42
バルサン耐性を備えて5割以上パワーあっぷぷぷw
2012/08/26(日) 15:07:51.22
ゆっくりモダンになっていく・・・




・・・モダンRuby。
2012/08/29(水) 00:35:50.14
モダンPERL追いかけてたら時代に取り残されましたとほほ
2012/08/30(木) 21:05:34.35
>>245
その最後の「とほほ」だけで、もう10年以上は時代に取り残されてるよな
2012/08/30(木) 21:12:12.26
とほほだってよw
もうお前5.6こそ最高とかいって周りに強要してろよ
2012/08/31(金) 00:07:22.19
5.6だと日本語がちゃんと使えません。仕事で使うなら5.005一択です。
2012/09/01(土) 09:59:22.19
どうやらモダンパールは時代遅れみたいですね
本家のパールはすでにその先に進んでます
テキスト処理90%のPerlが文字列を楽に扱えないなんてたちの悪い冗談でしか
ありません
2012/09/02(日) 02:19:31.92
C++へのアンチテーゼの側面もあったPerlなのにモダンPerlはどうしちゃったのかな
2012/09/03(月) 01:19:39.59
テクノロジーはスクラップアンドビルドなものと考える連中はとほほの内容が
古いと考えるようだ
252デフォルトの名無しさん
垢版 |
2012/09/08(土) 14:37:07.80
かってに「モダン」とか名乗るなや
2012/09/09(日) 00:59:31.20
モダンでもないのにモダン名乗られてもなあ
2012/09/09(日) 08:13:34.65
リャマ本第6版までモダンに毒されてるよ
おまいらリャマ本は第1版こそ至高・正義だ
定価より高くても中古で第1版を買え!
2012/09/09(日) 17:51:10.11
第1版ってのはバージョン4のピンク本のことか?あれは本当にいい本
2012/09/09(日) 18:42:20.14
ダヨモンPerl
アリャマ本
2012/09/10(月) 00:59:47.94
赤らくだ本だとか赤リャマ本の序文、それにポケットリファレンスの序文でLarryはふざけ過ぎてしばらくの間O'reillyから干されていた。今回「まじめに書く」と誓ったためようやく第4版の執筆許可が下りたらしい。
2012/09/12(水) 00:04:41.71
結局らくだ本的にはモダンPerl(=perl5.8)はスルーってことか
最近は重いモジュールも避けられる傾向にあるしな
2012/09/12(水) 00:11:25.67
重いモジュールも避けられる傾向にあるしな(キリッ
とか言う奴は十中八九List::Utilとかを使わない
2012/09/12(水) 00:30:32.64
実際に書かせてみればろくなコード書かないんだろうな
2012/09/12(水) 00:31:53.70
モダンperlと言われているもののうち一部の重たいモジュールを持ち出して
重たいモジュールは避ける傾向にあるからモダンperlも避ける傾向だよねー
なんてどんな詭弁だよ
2012/09/12(水) 00:33:07.74
確かにLarryはモダンPerlについて多くを語ろうとしないな
きっと軽いスクリプトが好きなんだろうなList::Utilとか使わない
2012/09/12(水) 00:55:43.31
List::UtilはXSで書かれてるから自分でPerlで書くよりよっぽど高速なわけだが
てかとってつけたようにLarry様の名前出すなよw
2012/09/12(水) 01:36:14.68
GUIやバイナリファイル扱うときにXSを使って効率を上げるのは分かるが
そうでないときにXS使ってスクリプトの利便性を下げるのは簡便だな。
2012/09/12(水) 01:47:29.25
勘弁
2012/09/12(水) 02:38:31.59
>>264
なぜ利便性が下がる?
2012/09/13(木) 23:01:41.84
第1ヒント:テキスト萌えたんのポータビリティ強化月間
2012/09/13(木) 23:29:47.30
「スクリプトが何かよく分かっていない」と書いたはらたいらに3,000点。
2012/09/14(金) 23:30:28.34
バイナリではないところがスクリプトの利便性って分かるかな?無理かな?
2012/09/15(土) 17:45:47.86
利便性の優先度
作る人の利便性 <<< 使う人の利便性
2012/09/15(土) 18:43:43.53
中身が古いか新しいかは使う人の利便性に影響はしないけどね
2012/09/15(土) 22:16:30.43
結局モダンかどうかは気持ちの問題だし、供給者側の主張次第でしょ
利用者側にとってはちゃんと使えればどうでもいいよそんなもん
2012/09/19(水) 01:43:10.30
モダンパールは単なる自己満足であったか
そもそも書いたときはモダンでも後で読むときはモダンではないわな
モダンと言われると互換性がないんじゃないかと思って警戒するひとも
いるかもしれないしな
2012/09/19(水) 02:38:41.68
use strict;
use Encode;
2012/09/20(木) 09:27:07.77
Perl 6は、ポストモダンですか
2012/09/20(木) 13:14:19.79
バイナリでの文字列置換をしています

$str =~ s/\xFF/\x00/g;

という書き方ならうまく行くのに、

$src = '\xFF';
$dst = '\x00';
$str =~ s/$src/$dst/g;

ではうまく行きません
$srcの部分は思い通り検索できるのに、
$dstの部分はバイナリではなく \x00 という文字列に置換されます
どうすればいいですか
2012/09/20(木) 13:16:41.93
$dst = "\x00";
2012/09/20(木) 13:31:02.66
確かにそういうことなのですが、
何故$dstという変数を使うかというと、その中身が不定だからです
$dst に '00' とか '01' とかいろんな文字列が入った場合の置換の書き方はありませんか

とりあえず、pack("C", hex($dst)) と書いて eオプションで評価すれば
うまく行くのは確認したのですが、$srcみたいなスマートな書き方はできないものかと
2012/09/20(木) 14:11:13.98
packするのが一番マシじゃないだろうか
ただ置換内ではなくその直前に追い出したいけど
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況