こんにちは、文字列の連結の質問になります。
要素の数だけ、 or で連結して、とあるコマンドに引き渡す構文を生成する処理を書いています。
aaaa
bbbb
cccc
dddd
という4つの要素があれば、
"aaaa or bbbb or cccc or dddd"
という文字列を生成するものです。
ポイントは、
"aaaa or bbbb or cccc or dddd or"
で終わってしまってはいけないという事です。
"aaaa or bbbb or cccc or dddd"
で終わらなくてはいけません。
そして、要素が"aaaa"のみであった場合は、
or演算子の無い 単なる"aaaa" を出力せねばなりません。
現状、以下の手法をとっているのですが、「要素の最初だけ(つまり"aaaa"だけ)、他の要素と綺麗に分断して異なる処理をさせる」、別の手法は存在するものでしょうか?
あるいは、もっと別の書き方の方が可読性が高い、というものがあればご教示頂けないでしょうか。よろしくお願いします。
$USERLIST = @("aaaa","bbbb","cccc","dddd")
$USERLIST | foreach-object {
if ( $flag -eq $null ) {
$UserString="$_"
$flag++
} else {
$UserString= $UserString + " or $_"
}
}
$UserString
Remove-Variable UserString
Remove-Variable flag