Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

การจับคู่อักขระที่ไม่ใช่ตัวเลข (Non-digit) ใน Python Regex

ใช้ escape sequence \D (D พิมพ์ใหญ่) เพื่อจับคู่ อักขระที่ไม่ใช่ตัวเลข (non-digit character) เทียบเท่ากับ [^0-9]

ตัวอย่าง

import re
foo = 'Mo4zam5Bi6QuE7'
match = re.findall(r'\D', foo)
print(match)

ผลลัพธ์

['M', 'o', 'z', 'a', 'm', 'B', 'i', 'Q', 'u', 'E']

สรุป Escape Sequences คู่ตรงข้าม

Escape Sequenceความหมายเทียบเท่า Character Class
\dตัวเลข (digit)[0-9]
\Dไม่ใช่ตัวเลข (non-digit)[^0-9]
\wอักขระคำ (word char)[a-zA-Z0-9_]
\Wไม่ใช่อักขระคำ[^a-zA-Z0-9_]
\sช่องว่าง (whitespace)[\t\n\r\f\v]
\Sไม่ใช่ช่องว่าง[^\t\n\r\f\v]