structs String ของ Swift มาพร้อมกับวิธีการที่สร้างขึ้นมาบางส่วนเพื่อจัดการกับกรณีของสตริง นี่คือวิธีการบางวิธีในการทำให้สตริงเป็นตัวพิมพ์ใหญ่ใน Swift รวมถึงการใช้วิธีการมาตรฐานและไลบรารีของบุคคลที่สามหากจำเป็น.
String
ในอดีต คนในภาษาโปรแกรมมิ่งเช่น C ต้องดำเนินการย้ายสตริงด้วยตนเองด้วยการใช้ฟังก์ชัน รับมือกับอาร์เรย์และสตริงที่จบด้วย null Swift ทำให้มันง่ายขึ้น โอเปอเรเตอร์ ‘+’ สำหรับสตริงนั้นมาจากภาษาเช่น Java และ C++ นำเสนอวิธีที่คุ้นเคยในการต่อสตริงเข้าด้วยกัน มีตัวเลือกที่เกินกว่า ‘+’.
Swift ทำให้เรื่องนี้ง่ายดายด้วยคุณสมบัติที่เรียกว่า lowercased นี่คือวิธีที่คุณใช้มัน.
lowercased
ก่อน Swift และการโปรแกรมแบบทันสมัย, การจับคู่รูปแบบเป็นเรื่องของเครื่องมือพิเศษและภาษาเช่น sed, awk, หรือ Perl ที่รู้จักกันดีสำหรับความสามารถในการประมวลผลข้อความ Swift, ด้วยกรอบการทำงาน Foundation ที่แข็งแกร่ง, ทำให้งานเหล่านี้ง่ายขึ้นในภาษา, ทำให้มากขึ้นสำหรับนักพัฒนา หนึ่งทางเลือกที่ไม่ใช้ regular expressions คือการทำซ้ำผ่านสตริงโดยใช้วิธี filter ของ Swift ร่วมกับเงื่อนไขที่กำหนดเองซึ่งก็อาจใช้เวลานานและมีการอ่านที่ยากขึ้น Regular expressions เสนอวิธีที่กระชับ แม้ว่าบางครั้งอาจดูซับซ้อนในการอธิบายรูปแบบที่เราต้องการลบหรือจัดการ ในเบื้องหลัง, เมื่อคุณใช้งาน replacingOccurrences(of:with:options:) กับตัวเลือก .regularExpression, Swift ใช้เครื่องยนต์ regular expression จาก ICU (International Components for Unicode) เพื่อประมวลผลรูปแบบ ICU เป็นไลบรารีที่เข้มแข็งและใช้กันอย่างแพร่หลายสำหรับการสนับสนุน Unicode, รวมถึงการจับคู่รูปแบบ, ซึ่งถูกนำไปใช้ในภาษาการโปรแกรมระดับสูงหลายภาษา.
sed
awk
filter
replacingOccurrences(of:with:options:)
.regularExpression
Swift ทำให้การทำงานกับส่วนย่อยสตริงค่อนข้างตรงไปตรงมา มาลองดำดิ่งลงไปดูกันเลยด้วยตัวอย่าง.
ใน Swift, คุณสามารถหาความยาวของสตริงได้โดยการเข้าถึงคุณสมบัติ count ง่าย ๆ เลย, ลองทำดู.
count
Swift ทำให้การเชื่อมต่อสตริงแบบนี้เป็นเรื่องง่ายด้วย syntax \ (variableName).
\ (variableName)
Swift ทำให้คุณสามารถจัดการงานลบเครื่องหมายอัญประกาศได้อย่างง่ายดาย นี่คือตัวอย่างเร็วๆ โดยใช้ replacingOccurrences(of:with:), ซึ่งทำงานตามที่ฟังดู—สลับส่วนของข้อความด้วยสิ่งอื่น, หรือไม่มีอะไรเลย.
replacingOccurrences(of:with:)
เราได้ทำการสลับข้อความในสตริงมาตั้งแต่ยุคแรกๆ ของการคอมพิวต์ เดิมที, มันเกิดขึ้นกับเครื่องมือ Command-line ง่ายๆ เช่น sed ใน Swift, replacingOccurrences(of:with:) ทำหน้าที่หนัก, และคุณได้รับการควบคุมมากขึ้นด้วยตัวเลือกเช่น .caseInsensitive หรือ .regularExpression ทางเลือกอื่นๆ ใน Swift ได้แก่การใช้ NSRegularExpression สำหรับรูปแบบที่ซับซ้อนและ NSMutableString สำหรับการดำเนินการสตริงที่เปลี่ยนแปลงได้ ในขั้นต้น, วิธีการแทนที่ข้อความของ Swift ทำงานร่วมกับเคาน์เตอร์พาร์ท Objective-C ที่มีประสิทธิภาพ, ให้ความเร็วและความหลากหลาย.
.caseInsensitive
NSRegularExpression
NSMutableString
การสนับสนุนเนทีฟของ Swift สำหรับ regex ใช้คลาส NSRegularExpression ควบคู่ไปกับเมท็อด range และ replacement ของคลาส String ด้านล่างเป็นตัวอย่างของการใช้ regex ในการค้นหาและเน้นที่อยู่ email ภายในบล็อกข้อความ.