วิธีลบช่องว่างในสตริงใน C #

Withi Lb Chxng Wang Ni String Ni C



ใน C# อักขระช่องว่างจะแสดงด้วยช่องว่าง แท็บ ขึ้นบรรทัดใหม่ ขึ้นบรรทัดใหม่ และอักขระอื่นๆ ที่คล้ายกัน การลบช่องว่างออกจากสตริงเป็นงานทั่วไปในการจัดการสตริง โดยเฉพาะอย่างยิ่งเมื่อต้องจัดการกับอินพุตของผู้ใช้ การประมวลผลไฟล์ และการแยกวิเคราะห์ข้อมูล บทความนี้เจาะลึกวิธีการต่างๆ ในการลบช่องว่างออกจากสตริงใน C#

ช่องว่างคืออะไร?

ช่องว่างคืออักขระที่แสดงช่องว่างหรือช่องว่างในสตริงข้อความ โดยทั่วไปจะใช้เพื่อแยกคำและองค์ประกอบอื่นๆ ของข้อความ และเพื่อปรับปรุงความสามารถในการอ่านและรูปลักษณ์ของข้อความ







ในการเขียนโปรแกรม ช่องว่างครอบคลุมอักขระต่างๆ เช่น ช่องว่าง แท็บ การขึ้นบรรทัดใหม่ และการขึ้นบรรทัดใหม่ ในภาษาการเขียนโปรแกรมหลายภาษา ช่องว่างจะถูกละเว้นหรือถือว่าไม่มีนัยสำคัญเมื่อประมวลผลหรือตีความโค้ด แต่สิ่งเหล่านี้อาจส่งผลต่อเค้าโครง การจัดรูปแบบ และไวยากรณ์ของโค้ด



วิธีลบช่องว่างในสตริง

การลบหรือจัดการช่องว่างเป็นงานทั่วไปในการประมวลผลสตริงและการจัดการข้อความ การป้อนข้อความให้เป็นมาตรฐานหรือทำให้เป็นมาตรฐานมักเกี่ยวข้องกับความจำเป็นในการลบหรือแทนที่ช่องว่าง หากต้องการลบอักขระที่ไม่จำเป็นซึ่งอาจส่งผลต่อการทำงานของโค้ดหรือความถูกต้องของข้อมูล หรือเพื่อปรับปรุงประสิทธิภาพและความสามารถในการอ่านโค้ด ต่อไปนี้คือบางส่วนสำหรับการดำเนินการ:



1: การใช้เมธอด String.Replace()

หากต้องการลบช่องว่างออกจากสตริงอย่างตรงไปตรงมา สามารถใช้เมธอด String.Replace() ได้ ในสถานการณ์สมมตินี้ เราสามารถกำหนดอักขระเว้นวรรค ” ” เป็นค่าเก่าและสตริงว่าง ” ” เป็นค่าใหม่ เมื่อทำเช่นนั้น ช่องว่างทั้งหมดภายในสตริงจะถูกลบออกอย่างมีประสิทธิภาพ





ใช้ระบบ;

คลาสไวต์เพซ
{
โมฆะคงที่หลัก ( สตริง [ ] หาเรื่อง )
{
สตริง originalString = “สวัสดี แซม!” ;
สตริงที่ตัดแต่งสตริง = originalString.Replace ( ' ' , '' ) ;
Console.WriteLine ( ตัดแต่งสตริง ) ;
}
}


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

ภายในเมธอด Main เราเริ่มต้นตัวแปรสตริงชื่อ originalString ด้วยค่า “Hello, Sam!”



ต่อไป เราจะประกาศตัวแปรสตริงอีกตัวชื่อ trimmedString และกำหนดผลลัพธ์ของการเรียกใช้เมธอด Replace() บน originalString เดอะ แทนที่() วิธีการถูกเรียกใช้โดยมีอาร์กิวเมนต์สองอาร์กิวเมนต์: อาร์กิวเมนต์แรกแทนสตริงย่อยเก่าที่เราต้องการแทนที่ ซึ่งในกรณีนี้คืออักขระเว้นวรรคตัวเดียว ' ' และอาร์กิวเมนต์ที่สองหมายถึงสตริงย่อยใหม่ที่เราต้องการแทนที่ด้วย นั่นคือสตริงว่าง “”.

2: การใช้ String.Join() วิธีการ

อีกวิธีในการลบช่องว่างออกจากสตริงคือการแยกสตริงออกเป็นอาร์เรย์ของสตริงย่อยโดยใช้เมธอด String.Split() แล้วรวมสตริงย่อยกลับเข้าด้วยกันโดยใช้ สตริงเข้าร่วม () วิธี. หากต้องการกำจัดสตริงย่อยว่างที่อาจเกิดขึ้นจากช่องว่างที่ต่อเนื่องกัน เราสามารถใช้ตัวเลือก StringSplitOptions.RemoveEmptyEntries

ใช้ระบบ;

คลาสไวต์เพซ
{
โมฆะคงที่หลัก ( สตริง [ ] หาเรื่อง )
{
สตริง originalString = “สวัสดี แซม!” ;
สตริง [ ] สตริงย่อย = originalString.Split ( ถ่านใหม่ [ ] { ' ' } , StringSplitOptions.RemoveEmptyEntries ) ;
สตริง trimmedString = String.เข้าร่วม ( '' , สตริงย่อย ) ;
Console.WriteLine ( ตัดแต่งสตริง ) ;
}
}


ภายในโค้ดนี้มีการประกาศตัวแปรสตริงชื่อ “originalString” และเริ่มต้นด้วยค่า “Hello, Sam!” จากนั้นจะแยกออกเป็นอาร์เรย์ของสตริงย่อยโดยใช้อักขระเว้นวรรคเป็นตัวคั่น ตัวเลือก RemoveEmptyEntries ใช้เพื่อแยกสตริงย่อยที่ว่างเปล่าออกจากอาร์เรย์ที่เป็นผลลัพธ์

ต่อจากนั้นรหัสใช้ สตริงเข้าร่วม () วิธีการรวมสตริงย่อยที่ไม่ว่างให้เป็นสตริงรวม โดยใช้สตริงว่างเป็นตัวคั่น

สุดท้าย รหัสใช้ Console.WriteLine เพื่อแสดงสตริงที่ตัดแต่งบนหน้าต่างคอนโซล เมื่อรันโค้ดนี้ คุณจะสังเกตเห็นผลลัพธ์ “Hello, Sam!” กำลังพิมพ์บนคอนโซล

3: การใช้นิพจน์ทั่วไป

นิพจน์ทั่วไปเป็นวิธีที่มีประสิทธิภาพในการจับคู่และแทนที่รูปแบบในสตริง โดยใช้ Regex แทนที่ () วิธีการ เราสามารถกำจัดอักขระช่องว่างทั้งหมดออกจากสตริงได้อย่างมีประสิทธิภาพ

ใช้ระบบ;
ใช้ System.Text.RegularExpressions;

ช่องว่างของคลาส
{
โมฆะคงที่หลัก ( สตริง [ ] หาเรื่อง )
{
สตริง originalString = “สวัสดี แซม!” ;
สตริงที่ตัดแต่งสตริง = Regex.Replace ( ต้นฉบับสตริง, @ '\s+' , '' ) ;
Console.WriteLine ( ตัดแต่งสตริง ) ; '
}
}


ในโค้ดนี้ ตัวแปรสตริงชื่อ “originalString” จะถูกประกาศและกำหนดค่าเริ่มต้นด้วยค่า “Hello, Sam!” จากนั้นโค้ดจะใช้เมธอด Regex.Replace() เพื่อแทนที่อักขระช่องว่างอย่างน้อยหนึ่งอักขระ (แสดงโดยนิพจน์ทั่วไป \s+) ด้วยสตริงว่าง

สุดท้าย โค้ดใช้ Console.WriteLine() เพื่อส่งออกสตริงที่ตัดแต่งแล้วไปยังหน้าต่างคอนโซล และเมื่อคุณรันโปรแกรมนี้ คุณจะสังเกตเห็นเอาต์พุต 'Hello, Sam!' พิมพ์ไปที่คอนโซล

ในตัวอย่างนี้ มีการใช้รูปแบบนิพจน์ทั่วไป @”\s+” เพื่อจับคู่อักขระช่องว่างอย่างน้อยหนึ่งตัว (รวมถึงช่องว่าง แท็บ และการขึ้นบรรทัดใหม่) แล้วแทนที่ด้วยสตริงว่าง

4: การใช้ LINQ

เรายังสามารถลบช่องว่างออกจากสตริงโดยใช้ LINQ เราสามารถใช้เมธอด Where() เพื่อกรองอักขระช่องว่างแล้วรวมอักขระที่เหลือกลับเข้าด้วยกันโดยใช้ สตริง Concat() วิธี.

ใช้ระบบ;
ใช้ System.Linq;

ช่องว่างของคลาส
{
โมฆะคงที่หลัก ( สตริง [ ] หาเรื่อง )
{
สตริง originalString = “สวัสดี แซม!” ;
สตริง trimmedString = สตริงใหม่ ( originalString.ที่ไหน ( ค = > ! char.IsWhiteSpace ( ) ) .ToArray ( ) ) ;
Console.WriteLine ( ตัดแต่งสตริง ) ;
}
}


ในข้อมูลโค้ดนี้ ตัวแปรสตริงที่เรียกว่า “originalString” ถูกประกาศและเริ่มต้นด้วยค่า ” Hello, Sam! “. จากนั้นสร้างตัวแปรสตริงใหม่ชื่อ trimmedString โดยใช้นิพจน์ LINQ ที่กรองอักขระช่องว่างออกจากสตริงเดิม วิธีการขยาย Where() ใช้เพื่อกรองอักขระและอักขระที่เป็นผลลัพธ์จะถูกแปลงเป็นอาร์เรย์และส่งผ่านไปยังตัวสร้างสตริงใหม่เพื่อสร้างสตริงใหม่

สุดท้าย รหัสใช้ Console.WriteLine() เพื่อส่งออกสตริงที่ตัดแต่งแล้วไปยังหน้าต่างคอนโซล เมื่อรันโค้ดนี้ คุณจะสังเกตเห็นผลลัพธ์ “Hello, Sam!” แสดงบนคอนโซล

บทสรุป

ใน C# มีหลายวิธีในการลบช่องว่างออกจากสตริง ซึ่งได้แก่ เมธอด String.Replace() เมธอด String.Join() การใช้นิพจน์ทั่วไป และการใช้ LINQ จำเป็นอย่างยิ่งที่จะต้องเลือกใช้วิธีการที่มีประสิทธิภาพ ทนทาน และเข้าใจได้ง่าย ซึ่งช่วยให้ดูแลรักษาและอ่านค่าได้ง่าย