ตัวอักษรเริ่มต้นและสิ้นสุดบรรทัดใน Python Regular Expressions

มีตัวอักษรพิเศษที่ใช้แทนการ เริ่มต้น '^' หรือการสิ้นสุด บรรทัด '$' ลองดูการทำงานของพวกมัน จากตัวอย่าง

ตัวอย่าง

ในตัวอย่างนี้รูปแบบการค้นหาคือ: แทนที่ 'aaa' ด้วย '!' ก็ต่อเมื่อมันอยู่ที่จุดเริ่มต้นของบรรทัด:

pythontxt = 'aaa aaa aaa'
res = re.sub('^aaa', '!', txt)

print(res)

ผลลัพธ์จากการรันโค้ด:

python'! aaa aaa'

ตัวอย่าง

ในตัวอย่างนี้รูปแบบการค้นหาคือ: แทนที่ 'aaa' ด้วย '!' ก็ต่อเมื่อมันอยู่ที่จุดสิ้นสุดของบรรทัด:

pythontxt = 'aaa aaa aaa'
res = re.sub('aaa$', '!', txt)

print(res)

ผลลัพธ์จากการรันโค้ด:

python'aaa aaa !'

ตัวอย่าง

เมื่อ regular expression ขึ้นต้นด้วย '^' และลงท้ายด้วย '$' นั่นหมายความว่า การตรวจสอบทั้งบรรทัดต้องตรงกับ regular expression ทั้งหมด

ในตัวอย่างต่อไปนี้รูปแบบการค้นหาคือ: ตัวอักษร 'a' ซ้ำหนึ่งครั้งหรือ มากกว่า แทนที่ทั้งบรรทัดด้วย '!' ก็ต่อเมื่อบรรทัดนั้นประกอบด้วยตัวอักษร 'a' เท่านั้น:

pythontxt = 'aaa'
res = re.sub('^a+$', '!', txt)

print(res)

ผลลัพธ์จากการรันโค้ด:

python'!'

แบบฝึกหัด

Задание 1

กำหนดสตริง:

pythontxt = 'abc def xyz'

เขียน regular expression เพื่อหาสตริงย่อยแรก ที่ประกอบด้วยตัวอักษร

Задание 2

กำหนดสตริง:

pythontxt = 'abc def xyz'

เขียน regular expression เพื่อหาสตริงย่อยสุดท้าย ที่ประกอบด้วยตัวอักษร