Python ตอนที่ 50 ตรวจสอบว่า String เป็นตัวอักษรและตัวเลขทั้งหมดหรือไม่ ด้วยเมธอด isalnum()

เมธอด isalnum() เป็นเมธอของสตริง มีไว้สำหรับตรวจสอบว่า อักขระในสตริงเป็นตัวอักษรและตัวเลข (alphanumeric) ทั้งหมดหรือไม่ ซึ่งตัวอักษรและตัวเลขในที่นี้หมายถึง ตัวอักษร (a-z) และตัวเลข (0-9)

ตัวอย่างอักขระที่ไม่ใช่ตัวอักษรก็เช่น ช่องว่าง (space) ! # % & ? และอักขระอื่น ๆ ที่นอกเหนือจาก ตัวอักษร (a-z) และตัวเลข (0-9)

โดยถ้าตรวจสอบแล้ว อักขระในสตริงเป็นตัวอักษรและตัวเลข (alphanumeric) ทั้งหมด จะคืนค่าเป็น True แต่ถ้าไม่ จะคืนค่าเป็น False

รูปแบบการใช้งานเมธอด isalnum() จะเป็นดังนี้

string.isalnum()    

เมธอดนี้ไม่มีพารามิเตอร์

ตัวอย่างการใช้งานเมธอด isalnum()

mytext = "Python is great. I love Python."

x = mytext.isalnum()

print(x)
# x = False

จากโค้ดตัวอย่าง ผลลัพธ์จะเป็น False เพราะในสตริงมีช่องว่าง (Space) และ .

mytext1 = "PYTHON"
mytext2 = "45412"
mytext3 = "PYTHON2020"

x = mytext1.isalnum()   # True
y = mytext2.isalnum()   # True
z = mytext3.isalnum()   # True

print(x)
print(y)
print(z)

จากโค้ดตัวอย่างด้านบน x, y และ z จะเป็น True ทั้งหมด เพราะอักขระในสตริงเป็นตัวอักษรและตัวเลขตามเงื่อนไข

เมธอด isalnum() กับภาษาไทย

mytext1 = "ผมรักคุณนะครับแล้วคุณรักผมบ้างไหมมีใจให้ผมบ้างหรือเปล่าอยากรู้จังเลย"

x = mytext1.isalnum()   # False

print(x)
# x = False

จากโค้ดตัวอย่าง ผมใช้เมธอด isalnum() ตรวจสอบสตริงที่เป็นภาษาไทย ปรากฏว่าได้ผลลัพธ์เป็น False เพราะ alphanumeric ต้องเป็นตัวอักษร (a-z) และตัวเลข (0-9) เท่านั้น