Skip to content
Siamcoder

การจัดการสตริงใน C++

c++1 min read

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

นี่คือตัวอย่างการใช้งานการจัดการกับสตริงในภาษา C++:

#include <iostream>
#include <string>
int main() {
std::string message = "สวัสดีชาวโลก!";
// แสดงความยาวของสตริง
std::cout << "ความยาวของสตริง: " << message.length() << std::endl;
// แสดงสตริงทั้งหมด
std::cout << "สตริงทั้งหมด: " << message << std::endl;
// แสดงสตริงตัวอักษรที่ตำแหน่งที่กำหนด
std::cout << "ตัวอักษรที่ตำแหน่งที่ 5: " << message[4] << std::endl;
// เปลี่ยนแปลงสตริงให้เป็นตัวพิมพ์ใหญ่ทั้งหมด
std::cout << "สตริงในรูปแบบตัวพิมพ์ใหญ่: " << uppercase(message) << std::endl;
// เปลี่ยนแปลงสตริงให้เป็นตัวพิมพ์เล็กทั้งหมด
std::cout << "สตริงในรูปแบบตัวพิมพ์เล็ก: " << lowercase(message) << std::endl;
// ตรวจสอบว่าสตริงเป็นคำว่า "สวัสดี" หรือไม่
if (message.find("สวัสดี") != std::string::npos) {
std::cout << "สตริงมีคำว่า 'สวัสดี'" << std::endl;
} else {
std::cout << "สตริงไม่มีคำว่า 'สวัสดี'" << std::endl;
}
return 0;
}`

ในตัวอย่างนี้ เราใช้คลาส std::string เพื่อประกาศตัวแปร message ที่เก็บสตริง "สวัสดีชาวโลก!" และใช้ฟังก์ชันและวิธีการต่าง ๆ ในการจัดการกับสตริงดังนี้:

  • length(): เพื่อแสดงความยาวของสตริง
  • operator[]: เพื่อแสดงตัวอักษรที่ตำแหน่งที่กำหนด
  • uppercase(): เพื่อเปลี่ยนแปลงสตริงให้เป็นตัวพิมพ์ใหญ่ทั้งหมด
  • lowercase(): เพื่อเปลี่ยนแปลงสตริงให้เป็นตัวพิมพ์เล็กทั้งหมด
  • find(): เพื่อตรวจสอบว่าสตริงมีคำหรือตัวอักษรที่กำหนดหรือไม่

การใช้งานการจัดการกับสตริงในภาษา C++ ช่วยให้เราสามารถทำงานกับข้อความหรือข้อมูลที่เป็นสตริงได้อย่างสะดวกและมีประสิทธิภาพ นอกจากนี้ยังมีฟังก์ชันและวิธีการอื่น ๆ ในการจัดการกับสตริงอีกมากมาย เช่น ตัดสตริง, นำเข้าและส่งออกสตริง ฯลฯ ซึ่งช่วยให้เราสามารถปรับแต่งและประยุกต์ใช้สตริงให้เหมาะสมกับงานที่ต้องการได้อย่างยืดหยุ่นและมีประสิทธิภาพมากขึ้น

ในภาษา C++ เราสามารถทำการต่อสตริง (String Concatenation) ได้โดยใช้ตัวดำเนินการบวก (+) หรือฟังก์ชัน append() ที่มีอยู่ในคลาส std::string เพื่อรวมสตริงหลายๆ สตริงเข้าด้วยกัน เช่น:

#include <iostream>
#include <string>
int main() {
std::string firstName = "John";
std::string lastName = "Doe";
std::string fullName = firstName + " " + lastName;
std::cout << "Full Name: " << fullName << std::endl;
std::string greeting = "Hello";
greeting.append(" ");
greeting.append(firstName);
greeting.append(" ");
greeting.append(lastName);
std::cout << "Greeting: " << greeting << std::endl;
return 0;
}`

ในตัวอย่างนี้ เราประกาศตัวแปร firstName และ lastName เพื่อเก็บชื่อและนามสกุล และประกาศตัวแปร fullName เพื่อเก็บสตริงที่ได้จากการต่อสตริง firstName, เว้นวรรค, และ lastName โดยใช้ตัวดำเนินการบวก (+) เพื่อรวมสตริงเข้าด้วยกัน

เรายังใช้ฟังก์ชัน append() เพื่อเพิ่มสตริงลงในสตริงที่มีอยู่แล้ว โดยในตัวอย่างนี้เราใช้ append() เพิ่มสตริง "Hello", เว้นวรรค, firstName, เว้นวรรค, และ lastName เข้าไปในสตริง greeting

การต่อสตริงในภาษา C++ ช่วยให้เราสามารถสร้างสตริงที่ยาวกว่าและซับซ้อนขึ้นได้ โดยการรวมสตริงหลายๆ สตริงเข้าด้วยกัน ซึ่งช่วยให้เราสามารถจัดรูปแบบข้อความและสร้างข้อความที่แสดงผลตามที่ต้องการได้อย่างหลากหลาย