問題タブ [select-string]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
5 に答える
69275 参照

regex - Select-String からキャプチャされたグループを取得するには?

Powershell (バージョン 4) を使用して、Windows 上の一連のファイルからテキストを抽出しようとしています。

ここまでは順調ですね。これにより、適切なMatchInfoオブジェクトのセットが得られます。

次に、キャプチャがmatchesメンバーにあることがわかったので、それらを取り出します:

これにより、次のことが得られます。

またはリストとして| Format-List

ここで停止します。さらに進んで、キャプチャされたグループ要素のリストを取得する方法がわかりません。

別の を追加してみまし| ForEach-Object -MemberName Groupsたが、上記と同じものを返すようです。

私が得る最も近い| Select-Object -Property Groupsものは、実際に私が期待するもの(セットのリスト)を提供します:

しかし、それらのそれぞれからキャプチャされたグループを抽出することはできません。私| Select-Object -Index 1はそれらのセットの 1 つだけを取得しようとしました。


更新:可能な解決策

追加すること| ForEach-Object { $_.Groups.Groups[1].Value }で探していたものが得られたようですが、その理由がわかりません。そのため、このメソッドをファイルのセット全体に拡張したときに正しい結果が得られるかどうかはわかりません。

なぜ機能しているのですか?

補足として、これ| ForEach-Object { $_.Groups[1].Value }(つまり、2 番目の なし.Groups) は同じ結果になります。

さらに試してみると、パイプを削除することでコマンドを短縮できるよう| Select-Object -Property Groupsです。

0 投票する
1 に答える
667 参照

powershell - Powershell でパターンを見つけてメールを送信する

xml ファイルを検索してパターンを検索するスクリプトがあり、結果を含むファイルが作成されます。次に、検索で一致が見つかったときにファイルを電子メールで送信します。ただし、この部分は機能していません。どんな助けでも(または微調整)素晴らしいでしょう:

0 投票する
1 に答える
645 参照

powershell - Select-String に時間がかかりすぎています。どうすれば最適化できますか

私は本当にこのスクリプトをスピードアップしようとしています。約17kのファイルを含むディレクトリがあります:

0 投票する
2 に答える
785 参照

powershell - 柄とサイズのお揃いの紐

テキスト ファイルで 2 つの文字列を検索したいと考えています。出力は、最初の文字列が 8 文字を超える場合にのみ表示されます。

実行しようとしているコマンドは次のとおりです。

したがって、ファイル std_server*.out で CPU と APPLICATION の両方の値を検索したいのですが、CPU の値が 8 文字を超える場合にのみこれらの値を出力したいと考えています。

それ、どうやったら出来るの?

現在、私は'(cpu=|application=")'で動作する基本的なバージョンを持っていますが、それは CPU のすべての値を出力し、CPU が不当に高い値 (CPU > 8)。

前もって感謝します。

0 投票する
2 に答える
77 参照

string - Powershell - 文字列内に文字列が見つからないようにすることは可能ですか?

文字列ベースの変数を .csv ベースのリストと比較して、文字列が存在するかどうかを判断しようとしています。私が考慮に入れなかったのは、変数が項目リストの 1 つの部分文字列である可能性です。

以下のコードの前に、ユーザーに名と姓を入力するように求め、提供された情報を使用して、次のアクションを実行して 8 文字のユーザー名を生成し、リストと照合してそのユーザー名を確認します。利用可能であるか、すでに取得されています。

したがって、Userlist.csv にユーザー名のリストがある場合:

  • スミス
  • 白い
  • ホワイトウィ

など...

そして、エンドユーザーが「Harry Smit」と入力すると、「smith」というユーザー名が生成され、IF ステートメントは、現在のユーザー名「smithj」内のリストで「smith」を見つけ、ユーザー名を「smithhi」に更新しますが、これはユーザー名「smith」が存在しないことを確認し、元のユーザー名を返すようにしたいと考えています。

誰もが提供できる助けに感謝します。うまくいけば、簡単な解決策があります。