PowerShell で文字列を 2 つの変数に分割する方法

Microsoft PowerShell にテキストの文字列がある場合、文字列を複数の変数に分割すると便利なことがよくあります。たとえば、ユーザーの名と姓をスペースで区切ったり、市外局番で始まる電話番号を使用したりできます。組み込みの PowerShell Split 関数を使用してこれを行うことができます。 PowerShell に他の方法で文字列を解析させるために、他の関数を使用できます。
Microsoft PowerShell について
PowerShell は、Microsoft が提供するコマンド ライン ツールおよびプログラミング言語です。これは、古い Windows および DOS のバッチ スクリプト ツールに代わるものであり、Windows のほとんどのバージョンでも引き続き使用できます。
複数のプログラムからの出力を結合したり、あるプログラムから別のプログラムにデータを渡したりするためによく使用されるため、文字列の操作に使用すると便利です。
PowerShell 分割関数
PowerShell に文字列があり、それを文字で分割したい場合は、組み込みの Split を使用して行うことができます 関数。 s -Split (s は文字列を含む変数) と記述するか、s.split を呼び出します。この関数は、分割された文字列の各要素を含む配列を返します。これは、次のような変数でキャプチャできます
$a =s.split()
$a[0]、$a[1] などのように個々の要素にアクセスすることで、これらを変数に割り当てることができます。また、より便利な場合は、それらを配列に保持することもできます。
文字列の分割は、ユーザー入力または別のプログラムからの出力をコンポーネント パーツに分割する必要がある場合に便利です。
PowerShell 分割オプション
既定では、PowerShell は、スペース、改行、タブなどの空白文字で文字列を分割します。場合によっては、コンマやハイフンなどの別の文字、または「and」などの文字列で文字列を分割したい場合があります。
これを行うには、split 関数の 2 番目の引数の前後で分割する目的の文字または文字列を作成します。たとえば、s.split(",") または s -split "," を記述してカンマで分割します。 PowerShell に delimiter として指定する任意の文字 、または区切り記号は、すべての結果文字列から省略されます。
分割する文字列の最大数を選択することもできます これを追加の引数として指定します。たとえば、"a,b,c,d".split(",",2) は、要素 "a" と "b,c,d" と "a,b,c,d" を含む配列を返します。 split(",") は、各文字を独自の文字列に含む配列を返します。
PowerShell での文字列のトリミング
トリム 関数。デフォルトでは、文字列の先頭と末尾から空白が削除されます。
たとえば、" a ".trim() は結果 "a" を返します。文字列から削除したい他の文字を引数として指定できるため、"^$a ".trim(" ^") は結果 "$a" を返します。
関数 TrimStart および TrimEnd を使用して、文字列の先頭または末尾からのみ文字を削除できます。
これは、最後に余分なスペースや改行を追加して入力ボックスに入力したユーザーから取得したデータがある場合に便利です。
PowerShell Join 関数
他のプログラミング言語と同様に、PowerShell の join function は本質的に split の反対です .複数の文字列を取り、それらを特定の区切り文字で、またはスペースをまったく入れずに結合します。
たとえば、-join ("a","b","c") は結果 "abc" を返しますが、"a","b","c" -join " " は結果文字列 "a b c" を返します。 ."これは、複数の変数を 1 つに結合してファイルに保存したり、別のコマンドに渡したり、ユーザーに出力したりする必要がある場合に役立ちます。