68user's page 掲示板

Prev< No. 4350〜4354> Next  [最新発言に戻る] [過去ログ一覧]
No. 4350 # has 2005/11/05 (土) 11:03:28
>>4346 hagu
もしperlならこんな感じなんでしょうか?
echo $NM | perl -ple 'y/A-Z/a-z/;substr($_,0,1)=~y/a-z/A-Z/;'

No. 4351 # 2005/11/05 (土) 13:43:04
>>4347
>>4348 hagu

連想配列の場合、表示の順序は、ハッシュ法に従うのでランダムとなります。
すみません。

echo $NM | nawk '{for(i=1;i<=length($0); i++) if(i==1) {NM[i]=substr($0,i,1)} else {NM[i]=tolower(substr($0,i,1))}} END{for(j=1; j<i; j++) printf("%c",NM[j]); printf("\n")}'

No. 4352 # hagu 2005/11/05 (土) 13:58:38
>>4349 マーブル
凄い。
sedだけでですね。
でも、凄く、複雑すぎます。

>>4351
今度は、期待したいた結果が得られました。
awkを使っているのも複雑ですね。

No. 4353 # zsh 2005/11/05 (土) 14:28:08
>>4352 hagu
これじゃだめ?

$ echo $NM | nawk '{ a=toupper(substr($0,1,1)); b=tolower(substr($0,2)); printf "%s%s\n",a,b; }'

No. 4354 # 2005/11/05 (土) 23:53:05
>>4353 zsh

そうですよね。
substr()で2文字目以降すべてを変換してしまえばいんですよね。
何、ループで1文字ずつ変換し、表示しているんだろう。

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