ค้นหาเว็บไซต์

เชื่อมต่อสตริงและตัวแปรใน PowerShell [8 วิธี]


การใช้ตัวดำเนินการต่อข้อมูล

ใช้ตัวดำเนินการต่อข้อมูลที่แสดงโดย + เพื่อเชื่อมสตริงและตัวแปรใน PowerShell

ใช้ + ตัวดำเนินการ:

$variable = "together"
$concatenatedStr = "Let's learn " + $variable
Write-Host $concatenatedStr

เอาท์พุท :

Let's learn together

+ เป็นตัวดำเนินการต่อข้อมูลขั้นพื้นฐานที่สุด เราใช้มันเพื่อเชื่อมสตริง "Let's learn " เข้ากับ the $variable และเก็บสตริงใหม่ในตัวแปร $concatenatedStr ซึ่งเราเพิ่มเติม ใช้กับ Write-Host cmdlet เพื่อแสดงบนคอนโซล PowerShell

อย่าลืมใส่นิพจน์ "Let's learn " + $variable ไว้ในวงเล็บ (()) หากคุณไม่ได้เก็บสตริงที่ต่อกันไว้ในตัวแปร แต่รวมเข้าด้วยกัน ในขณะที่ใช้ cmdlet Write-Host; ดูตัวอย่างต่อไปนี้

ใช้ + ตัวดำเนินการ:

$variable = "together"
Write-Host ("Let's learn " + $variable)

เอาท์พุท :

Let's learn together

นี่คือสิ่งที่จะเกิดขึ้นถ้าคุณไม่ใส่ไว้ภายใน ():

ใช้ + ตัวดำเนินการ:

$variable = "together"
Write-Host "Let's learn " + $variable

เอาท์พุท :

Let's learn  + together

ใช้ตัวดำเนินการต่อข้อมูลที่แสดงโดย += เพื่อเชื่อมสตริงและตัวแปรใน PowerShell

ใช้ += ตัวดำเนินการ:

$string1 = "together."
$string2 = "Let's learn "
$string2 += $string1
Write-Host $string2

เอาท์พุท :

Let's learn together.

ตัวดำเนินการ += ถูกใช้เมื่อเราต้องการต่อข้อมูลและมอบหมายงานในขั้นตอนเดียว ในตัวอย่างข้างต้น $string1 ถูกต่อเข้ากับ $string2 และสตริงใหม่ถูกกำหนดให้กับ $string2

โปรดใช้ความระมัดระวังเมื่อใช้ตัวดำเนินการต่อข้อมูล + และ += เนื่องจากลำดับมีความสำคัญอย่างมาก ดูตัวอย่างต่อไปนี้เป็นการสาธิต

ใช้ += ตัวดำเนินการ:

$string1 = "together."
$string2 = "Let's learn "
Write-Host ($string1 + "Are you going ")
$string1 += $string2
Write-Host $string2

เอาท์พุท :

together.Are you going
Let's learn

เราเชื่อมสตริง "Are you going " เข้ากับตัวแปร $string1 ซึ่งส่งผลให้เกิด together.Are you going เป็นเอาต์พุต ลำดับการต่อข้อมูลที่ถูกต้องคือ "Are you going " + $string1 ในทำนองเดียวกัน เราเชื่อม $string2 กับ $string1 โดยใช้ตัวดำเนินการ += และจัดเก็บสตริงใหม่ใน $string1 > แต่เราพิมพ์ $string2 ที่มีค่า มาเรียนรู้กันดีกว่า

การใช้การแก้ไขสตริงด้วย $()

ใช้การแก้ไขสตริงด้วย $() เพื่อเชื่อมสตริงและตัวแปรใน PowerShell

ใช้ตัวดำเนินการ $():

$variable = "together"
Write-Host "Let's learn $($variable)."

เอาท์พุท :

Let's learn together.

เชื่อมสตริงและตัวแปรเข้าด้วยกันโดยไม่ต้องใช้ $() ใน PowerShell

โดยไม่ต้องใช้ $():

$variable = "together"
Write-Host "Let's learn $variable."

เอาท์พุท :

Let's learn together.

แนวทางนี้เป็นมิตรกับผู้อ่านและเข้าใจง่ายกว่าการใช้ตัวดำเนินการต่อข้อมูล

การใช้ตัวดำเนินการรูปแบบ

ใช้ตัวดำเนินการรูปแบบ (-f) เพื่อเชื่อมสตริงและตัวแปรใน PowerShell

ใช้ตัวดำเนินการ -f:

$course1 = "Java"
$course2 = "PowerShell"
$course3 = "Python"
Write-Host ("Let's learn {0}, {1}, and {2}." -f $course1, $course2, $course3)

เอาท์พุท :

Let's learn Java, PowerShell, and Python.

เราใช้ตัวดำเนินการ -f ในตัวอย่างด้านบนเพื่อจัดรูปแบบสตริงที่ระบุ สตริงรูปแบบคือ "มาเรียนรู้ {0}, {1} และ {2}" และ $course1, $course2 และ $course คืออาร์กิวเมนต์ 3 รายการที่เราส่งผ่าน ตัวระบุรูปแบบคือตัวเลขที่อยู่ภายใน {} เป็นไปตามรูปแบบของ {index:format} และสอดคล้องกับดัชนีอาร์กิวเมนต์ที่ถูกส่งเข้ามา ดัชนีเหล่านี้ควบคุมลำดับที่ควรแสดงอาร์กิวเมนต์บนคอนโซล PowerShell

เรามาดูตัวอย่างอื่นด้านล่าง

ใช้ตัวดำเนินการ -f:

$course1 = "Java"
$course2 = "PowerShell"
$course3 = "Python"
Write-Host ("The average of {0}, {1}, and {2} courses is {3:n2}%." -f $course1, $course2, $course3, 83.5269)

เอาท์พุท :

The average of Java, PowerShell, and Python courses is 83.53%.

ใน {3:n2} 3 คือดัชนี ในขณะที่ n2 หมายถึงจำนวนตำแหน่งทศนิยม (จำนวนหลักหลังจุดทศนิยมลอยตัว) -จุด). คุณสามารถค้นหาสตริงรูปแบบที่ถูกต้องเพิ่มเติมได้ที่นี่

ใช้ตัวดำเนินการ -join

ใช้ตัวดำเนินการ -join เพื่อเชื่อมสตริงเข้ากับตัวแปรใน PowerShell

ใช้ตัวดำเนินการ -join:

$course1 = "Java"
$course2 = "PowerShell"
$course3 = "Python"
Write-Host ("Available Courses:",$course1, $course2, $course3, "R" -join " ")

เอาท์พุท :

Available Courses: Java PowerShell Python R

ตัวดำเนินการ -join รวมสตริงที่กำหนดทั้งหมดโดยมีตัวแปรคั่นด้วยช่องว่างเดียว โปรดทราบว่าคุณสามารถใช้ตัวคั่นใดก็ได้ที่คุณต้องการ

ใช้วิธี join()

ใช้วิธี join() เพื่อเชื่อมสตริงกับตัวแปรใน PowerShell

ใช้วิธีเข้าร่วม():

$course1 = "Java"
$course2 = "PowerShell"
$course3 = "Python"
Write-Host ([string]::join(" ", "Available Courses:",$course1, $course2, $course3, "R"))

เอาท์พุท :

Available Courses: Java PowerShell Python R

ที่นี่เราใช้วิธี join() ของคลาส string มันเหมือนกับตัวดำเนินการ -join ซึ่งจะรวมสตริงและตัวแปรทั้งหมดที่คั่นด้วยตัวคั่นที่ระบุ ในเมธอด join() อาร์กิวเมนต์แรกคือตัวคั่น ที่เหลือคือสตริงและตัวแปรที่ควรนำมาต่อกัน

ใช้วิธี Concat()

ใช้วิธี Concat() เพื่อเชื่อมสตริงกับตัวแปรใน PowerShell

ใช้ Concat() วิธีการ:

$course1 = "Java"
$course2 = "PowerShell"
$course3 = "Python"
Write-Host ([string]::Concat("Available Courses: ",$course1," ", $course2," ", $course3, " R"))

เอาท์พุท :

Available Courses: Java PowerShell Python R

เมธอด Concat() ยังเป็นของคลาส string และรวมสตริงและตัวแปรที่กำหนดทั้งหมด แต่เราต้องระมัดระวังเกี่ยวกับตัวคั่น

ใช้คลาส StringBuilder

ใช้คลาส StringBuilder เพื่อเชื่อมสตริงเข้ากับตัวแปรใน PowerShell

ใช้คลาส StringBulider:

$variable = "How are you?"
$stringBuilder = New-Object System.Text.StringBuilder
$stringBuilder.Append("Hello! ")
$stringBuilder.Append($variable)
Write-Host ($stringBuilder.ToString())

เอาท์พุท :

Hello! How are you?
Capacity MaxCapacity Length
-------- ----------- ------
      16  2147483647      7
      32  2147483647     19

ที่นี่ เราใช้ New-Object cmdlet เพื่อสร้างอินสแตนซ์คลาส StringBuilder เพื่อเข้าถึงเมธอด Append() เพื่อเชื่อมสตริงเข้ากับตัวแปร สุดท้าย เราใช้เมธอด ToString() เพื่อแปลงเป็นสตริงและพิมพ์บนคอนโซล PowerShell โดยใช้ cmdlet Write-Host นอกจากนี้ยังแสดงรายละเอียดอื่นๆ เกี่ยวกับสตริงที่ต่อกันซึ่งคุณสามารถดูได้ในเอาต์พุตด้านบน

ใช้ Join-String Cmdlet

ใช้ Join-String cmdlet เพื่อเชื่อมต่อคอลเลกชันของสตริงกับตัวแปรใน PowerShell

ใช้ Cmdlet เข้าร่วมสตริง:

$names = "How", "are", "you?"
$concatenatedStr = $names + "What's going on?" | Join-String -Separator " "
Write-Host $concatenatedStr

เอาท์พุท :

How are you? What's going on?

Join-String cmdlet ใช้เพื่อรวมหรือเชื่อมคอลเลกชันสตริงให้เป็นสตริงเดียวโดยคั่นด้วยตัวคั่นที่ระบุโดยใช้พารามิเตอร์ -Separator เราส่งคอลเลกชันของสตริง ($names) ไปที่ Join-String cmdlet หากคุณต้องการเชื่อมค่าสตริงเข้ากับคอลเลกชันของสตริง คุณสามารถใช้ตัวดำเนินการ + เหมือนที่เราทำในตัวอย่างข้างต้น

ดังนั้นเราจึงมีหลายวิธีในการต่อสตริงกับตัวแปร แต่การเลือกวิธีที่เหมาะสมที่สุดกับความต้องการของโปรเจ็กต์เป็นสิ่งสำคัญที่สุด

นั่นคือทั้งหมดที่เกี่ยวกับวิธีการเชื่อมต่อสตริงและตัวแปรใน PowerShell

บทความที่เกี่ยวข้อง