ご指摘の正規表現で、きっちり数値桁を明示するなら...\dと{}でこうですね。count,nameちなみに、sortでパイプを受けているのは、曜日順に結果を並べる為です。sortをつけないと以下になります。Thursdaysortをつけると以下になります。ダミーデータの作成ここが問題の意図を読みかねたので、一応2パターンで。※ランダムに100以内の数値を出力して、並び替え。sort※単純にランダムに100以内の数値を出力。検索ここも、例題からの出力意図がイマイチだったので、回答例をPowershellで表現してます。すいませんすいません。ファイルの比較これは、Powershellのお得意な所ですね。PowershellにはCompare-Object(diff)があるので、利用します。これが一番つらかったです。ワンライナーに近づけた版と、一度変数に入れて多少見やすくした版の2つを...。Tableに入れ込みます。Tableに入れることで、オブジェクト処理できるようになります。あとは、HashTableのキー毎に値を展開します。Tableを代入しなくても取り出せます。Table"にすると、型名しか出ないのです。配列はただ出力すると値ごとに行が分かれます。※配列を一行に出力するには、""で囲んでStringと明示してあげます。$($h.value2)"見にくい?改行するとこうですね...。Tableを一度変数に入れると、最後の出力部は若干見やすくなります。掲載許可をいただき以下に紹介します。}でのKeyへのArray追加です。TableへArrayを追加することで、縦から横に並び替えられています。後は、抜き出すだけですね。悔しいので、@superriver様が、ズルしちゃったwと可愛く仰っていたbegin句の固定inningラベルを動的に処理します。上記ソースでは実行ごとにhtとscoreが追加される問題も解決します。-Uniqueで除外できません。-Uniqueを処理してしまいます。ちなみにftの-HideTableHeadersでテーブルのカラム名を非表示にしています。-HideTableHeaders}はい、改行するとこうです。Import-Csvを利用せずに、ソース元と同様にキレイに処理されています。最終的には、1つのObjectとして取り込んで、ごにょごにょすることであっさりできました。$($a.group[4].name)"これも見にくい?改行するとこうですね...。%{"$($_.group[1].num),$($_.group[1].name),$($_.group[0].name)"}見にくいですよね。%{"$($_.group[1].num),$($_.group[1].name),$($_.group[0].name)"}まとめ以上で、全問回答となります。PowerShellのライター牟田口大介先生が行われている「シェル操作課題」をPowerShellでやってみたでも指摘がありますが、一旦オブジェクトとして取り込んでしまえば、PowerShellはごにょごにょ容易に行えます。いえ、問9、問10はごにょごにょするやり方を考えないと辛かったのも確かで...ようは良く考えろってことですね。基本的には、PowerShellの標準構文でも、おおよその文字列処理は可能です。WindowsでPerlで行ってきたような処理は、PowerShellに置換できると信じています。Import-CsvなりImport-*は、-Headerの冗長さはともかく、かなり便利なので活用していくべきところでしょうね。最後に、いくつか処理スクリプトをPowerShellで書いていますが、処理速度は問題です。牟田口先生のように、「処理を分ける、バックグラウンドジョブやワークフローで動かす」ことは考慮する必要がありますのでご注意を。(9)トップへ戻るスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。