PowerShell: How to Convert Multi-Line Texts Into an Array of Strings

Significance: we often run into situations where a list of items (such as usernames, computernames, etc.) that are needed to be actioned within a PowerShell script. Instead of manually creating double quotes around each string, we could quickly paste them into a text file or a text variable signified with the @ symbol as demonstrated below

Example 1:

# Paste a list of names here
# Important: there could spaces on each line
$usersList = @'
username1
username2
username3
'@

$userNames = @($usersList -split "`n")|%{$_.Trim()}

Example 2:

# Paste a list of names here
# Important: there must be no spaces nor extra characters between each name
$computersList = @'
computername1
computername2
computername3
'@

$computerNames = @($computersList -split "`n" -replace "\..*$")

Leave a Reply

Your email address will not be published. Required fields are marked *