>>>import re
\A หมายถึงต้องเป็นต้นประโยค จากตัวอย่าง Mister จะถูกเปลี่ยนเฉพาะคำแรก
>>>my_pattern = '\AMister'
>>>raw_string = 'Mister python and Mister Thailand'
>>>re.sub(my_pattern,'MR.',raw_string)
'MR. python and Mister Thailand'
\b หมายถึงต้องเป็นขอบของคำ จากตัวอย่างเดิม คำว่า BROAD จะไม่ถูกเปลี่ยนข้างหน้า R ยังมีตัว B ทำให้ R ไม่เป็นขอบของคำ
>>>import re
>>>s = '100 NORTH BROAD ROAD'
>>>re.sub(r'\bROAD\b', 'RD.', s)
'100 NORTH BROAD RD.'
\B ตรงข้ามกับ \b คือคำนั้นต้องเป็นส่วนข้างใน
>>>my_pattern = '\BROAD'
>>>raw_string = 'BROAD ROAD'
>>>re.sub(my_pattern,'RD.',raw_string)
'BRD. ROAD'
\d หมายถึงตัวเลข
>>>my_pattern = '\d'
>>>raw_string = 'credit number 1234-1234-1234'
>>>re.sub(my_pattern,'x',raw_string)
'credit number xxxx-xxxx-xxxx'
\D ตรงข้ามกับ \d คือทุกอย่างที่ไม่ใช่ตัวเลข
>>>my_pattern = '\D'
>>>raw_string = 'credit number 1234-1234-1234'
>>>re.sub(my_pattern,'x',raw_string)
'xxxxxxxxxxxxxx1234x1234x1234'
\s หมายถึงช่องว่าง
>>>my_pattern = '\s'
>>>raw_string = 'a b c d e'
>>>re.sub(my_pattern,'_',raw_string)
'a_b_c_d_e'
\S ตรงข้ามกับ \s คือทุกอย่างที่ไม่ใช่ช่องว่าง
>>>my_pattern = '\S'
>>>raw_string = 'a b c d e'
>>>re.sub(my_pattern,'_',raw_string)
'_ _ _ _ _'
\w หมายถึงตัวอักษรและตัวเลข โดยจะไม่เอาสัญลักษณ์ต่างๆ
>>>my_pattern = '\w'
>>>raw_string = 'a!b#c%d&e.'
>>>re.sub(my_pattern,'_',raw_string)
'_!_#_%_&_.'
\W ตรงข้ามกับ \w คือพวกสัญลักษณ์ต่างๆ
>>>my_pattern = '\W'
>>>raw_string = 'a!b#c%d&e.'
>>>re.sub(my_pattern,'_',raw_string)
'a_b_c_d_e_'
\z หมายถึงต้องอยู่สุดท้ายของข้อความ
>>>my_pattern = 'Mister\Z'
>>>raw_string = 'Mister and Mister'
>>>re.sub(my_pattern,'MR.',raw_string)
'Mister and MR.'
ไม่มีความคิดเห็น:
แสดงความคิดเห็น