Python:
แปลงสตริงเป็นตัวเล็ก
วิธีการ:
การทำให้สตริงเป็นตัวพิมพ์เล็กใน Python นั้นง่ายด้วยเมธอด .lower()
original_string = "Hello, World!"
lowercase_string = original_string.lower()
print(lowercase_string) # ผลลัพธ์: hello, world!
หรือใช้ list comprehension เพื่อการควบคุมที่เพิ่มขึ้น:
s = "HELLO, World!"
lower_list = [char.lower() for char in s]
print(''.join(lower_list)) # ผลลัพธ์: hello, world!
การทำความเข้าใจลึกซึ้ง
เมธอด .lower()
ได้ถูกรวมไว้ในประเภทสตริงของ Python ตั้งแต่เริ่มต้นมา มันเป็นวิธีที่ตรงไปตรงมาในการรับประกันการประมวลผลข้อมูลที่ไม่คำนึงถึงตัวพิมพ์ ซึ่งเป็นประโยชน์ในสถานการณ์เช่น การป้อนข้อมูลของผู้ใช้ที่ไม่คำนึงถึงตัวพิมพ์
มีทางเลือกอื่น ๆ เช่นการใช้ regular expressions:
import re
s = "HELLO, World!"
lower_s = re.sub(r'[A-Z]', lambda match: match.group(0).lower(), s)
print(lower_s) # ผลลัพธ์: hello, world!
แต่นี่เป็นการใช้วิธีที่มากเกินไปสำหรับเพียงแค่การแปลงสตริงให้เป็นตัวพิมพ์เล็ก
ภายใต้ฝาครอบ, เมธอด .lower()
ของ Python อาศัยการแมปอักขระ Unicode มาตรฐาน Unicode ระบุอักขระตัวพิมพ์เล็กที่สอดคล้องกับเกือบทุกอักขระที่มีค่าตัวพิมพ์ กระบวนการนี้ซับซ้อนกว่าแค่การลบค่าเพื่อได้จาก ‘A’ ไปเป็น ‘a’ เพราะไม่ใช่ทุกภาษาและอักษรมีการแมปที่ง่ายและตรงไปตรงมาเช่นนี้
ดูเพิ่มเติม
- เอกสารการใช้งาน Python เกี่ยวกับเมธอดสตริง: https://docs.python.org/3/library/stdtypes.html#string-methods
- รายละเอียดการแมปตัวพิมพ์ของ Unicode: https://www.unicode.org/reports/tr21/tr21-5.html
- บทเรียนสอนการใช้ list comprehensions ใน Python: https://realpython.com/list-comprehension-python/