68user's page 掲示板

Prev< No. 1839〜1844> Next  [最新発言に戻る] [過去ログ一覧]
No. 1839 # 68user 2001/03/21 (水) 19:58:36
>>1838 ふくし
> ../us/us/.. の場合、先頭の /us/ を置換したら続きの us/ から
> 処理するので s///g ではいかない、という話のようです
であれば、man perlre に
    \G … Match only where previous m//g left off (works only with /g)
とありますので、
    $path =~ s|\G/us/|/jp/|g;
ではどうでしょうか。

>>1836 ふくし
> $path =~ s|/us/|/jp/| while $path =~ m|/us/|;
でもいいのですが、定番の書き方としては、
    1 while ($path =~ s|/us/|/jp/|);
というのがありますね。

No. 1840 # 68user 2001/03/21 (水) 20:02:09
>>1839 68user
> $path =~ s|\G/us/|/jp/|g;
> ではどうでしょうか。
ありゃ、全然ダメだ。というか、意味が全く逆ですね。
こういうときに使う perl の regexp ってなかったっけなぁ。

No. 1841 # ふくし 2001/03/21 (水) 20:46:28
にゃるほど、1 while でがんばります。(ヘンな日本語)
ありがとうございました。

もいっこズにのって質問。
stat や split をリストに代入して1番目と5番めと7番目を
使いたい、とかいうとき、ぼくは他のを $dummy というので
受けていますが、たまに -w で、1回しか使ってないけど
書き間違えてませんかと言われます。
これを言われないような /dev/nul みたいな変数ってないんでしょうか。

No. 1842 # rosegarden 2001/03/21 (水) 23:22:14
>>1834 taka
> >(1) snd ドライバの使用。
> 「4.3-RELESEからsndドライバは使用されない」とおっしゃっていたので
> 将来性を考えて(?)pcmドライバのみ試してみました。
ええ、出来ればその方が良いのですが、しかし、鳴らないものを使っても
いまの taka さんの needs にはあわないだろうということで、
snd ドライバをお勧めしたのです。

しかし、最初は設定ファイルのレベルだと思ったので、
お節介をしたのですが、
まったく役に立たず、時間ばかりとってしまいました。
申し訳ありませんです。

No. 1843 # 68user 2001/03/21 (水) 23:30:56
>>1841 ふくし
    ($dummy, $dummy, $dummy, $num1, $num2) = (0,1,2,3,4,5);
と、一度に複数回 $dummy を使えば
    used only once: possible typo
の warning は抑止できます。あと、
    ($num1, $num2, $num3) = (split(/ /))[1,5,7];
という手もありますが、可読性が低下しますね。

本質的には 「1番目と5番めと7番目を使いたい」という
使い方をせずに
    $foo = $o->getFoo;
    $bar = $o->getBar;
    $baz = $o->getBaz;
などと書くように努めるべきだと思いますが、全ての場面で
それができるわけでもなく、悩ましい限りです。

No. 1844 # ふじ [URL] 2001/03/22 (木) 02:40:55
はじめまして。

いきなりですが、
>これを言われないような /dev/nul みたいな変数ってないんでしょうか。
(undef, undef, undef, $num1, $num2)=(0,1,2,3,4);

こんなのでどうですか?

Prev< No. 1839〜1844> Next  [最新発言に戻る] [過去ログ一覧]