หน้าแรก
หน้าแรก
คุณสามารถแปลงสตริงเป็นวัตถุวันที่โดยใช้ฟังก์ชัน strptime ระบุสตริงวันที่และรูปแบบที่ระบุวันที่ ตัวอย่าง import datetime date_str = '29122017' # The date - 29 Dec 2017 format_str = '%d%m%Y' # The format datetime_obj = datetime.datetime.strptime(date_str, format_str) print(datetime_ob
การใช้งานวันที่ของ Python รองรับตัวดำเนินการเปรียบเทียบทั้งหมด ดังนั้น หากคุณใช้โมดูลวันที่และเวลาเพื่อสร้างและจัดการวัตถุวันที่ คุณสามารถใช้ตัวดำเนินการ , =เป็นต้น บนวันที่ได้ ทำให้ง่ายต่อการเปรียบเทียบและตรวจสอบวันที่สำหรับการตรวจสอบ ฯลฯ ตัวอย่าง from datetime import datetime from datetime import
เมื่อคุณลบแพนด้าออกจากวัตถุวันที่ คุณจะได้รับวัตถุประทับเวลาของแพนด้า คุณสามารถแปลงวัตถุนี้เป็นวันที่ในรูปแบบสตริงหรือวัตถุวันที่ (วันที่ Python มาตรฐาน) หรือคุณสามารถใช้วัตถุ timedelta จากไลบรารี datetime ตัวอย่าง from pandas.tseries.frequencies import to_offset import pandas as pd dt = pd.to_date
หากต้องการทราบเวลาสร้างไฟล์ คุณสามารถใช้ os.path.getctime(file_path) บน windows บนระบบ UNIX คุณไม่สามารถใช้ฟังก์ชันเดียวกันได้ เนื่องจากจะคืนค่าครั้งล่าสุดที่มีการเปลี่ยนแปลงแอตทริบิวต์หรือเนื้อหาของไฟล์ เพื่อให้ได้เวลาในการสร้างบนระบบที่ใช้ UNIX ให้ใช้แอตทริบิวต์ st_birthtime ของ stat tuple ตัวอย่า
สัญกรณ์สตริงดิบ ตามเอกสารของ Python สัญกรณ์สตริงแบบ raw (rtext) ช่วยให้นิพจน์ทั่วไปมีความหมายและปราศจากความสับสน หากไม่มี แบ็กสแลช (\) ทุกตัวในนิพจน์ทั่วไปจะต้องนำหน้าด้วยอีกอันหนึ่งเพื่อหลีกเลี่ยง ตัวอย่างเช่น โค้ดสองบรรทัดต่อไปนี้มีฟังก์ชันเหมือนกัน − >>> re.match(r"\W(.)\1\W",
ตามเอกสารของ Python re.finditer(pattern, string, flags=0) ส่งคืนตัววนซ้ำที่ให้อินสแตนซ์ของ MatchObject ในการแข่งขันที่ไม่ทับซ้อนกันทั้งหมดสำหรับรูปแบบ RE ในสตริง สตริงจะถูกสแกนจากซ้ายไปขวา และผลลัพธ์ที่ตรงกันจะถูกส่งคืนตามลำดับที่พบ การแข่งขันที่ว่างเปล่าจะรวมอยู่ในผลลัพธ์ โค้ดต่อไปนี้แส
ในกรณีแรกในโค้ดด้านล่างสตริงวันที่ที่ระบุตรงกับรูปแบบ d-m-y และในกรณีที่สอง สตริงวันที่ไม่ตรงกับรูปแบบ ตัวอย่าง import re datestring = '21-09-1991' foo =re.match('(\d{2})[/.-](\d{2})[/.-](\d{4})$', datestring) print foo.group() datestring = '1991-09-21' foo =re.match('(\d
เราใช้เมธอด re.finditer() เพื่อค้นหาตำแหน่งที่แน่นอนของแต่ละรายการที่ตรงกันในสตริงที่กำหนดโดยใช้ Python regex ตัวอย่าง import re p = re.compile("[A-Z0-9]") for m in p.finditer('A5B6C7D8'): print m.start(), m.group() ผลลัพธ์ สิ่งนี้ให้ผลลัพธ์ 0 A 1 5 2 B 3 6 4 C 5 7 6
นิพจน์ทั่วไปทำให้งานของเรากรองรูปแบบในการประมวลผลคำได้ง่าย ข้อดีอย่างหนึ่งของนิพจน์ทั่วไปคือสามารถคอมไพล์และนำกลับมาใช้ใหม่ได้เพื่อผลลัพธ์ที่รวดเร็วยิ่งขึ้น เนื่องจากนิพจน์ทั่วไปไม่เปลี่ยนแปลงระหว่างการเรียกใช้ฟังก์ชัน เราจึงสามารถคอมไพล์ได้เพียงครั้งเดียวและใช้เวอร์ชันที่คอมไพล์แล้ว อย่างไรก็ตาม กา
เมธอด re.compile() re.compile(pattern, repl, string): เราสามารถรวมรูปแบบนิพจน์ทั่วไปเข้ากับออบเจ็กต์รูปแบบ ซึ่งสามารถใช้สำหรับการจับคู่รูปแบบได้ นอกจากนี้ยังช่วยในการค้นหารูปแบบอีกครั้งโดยไม่ต้องเขียนใหม่ ตัวอย่าง import re pattern=re.compile('TP') result=pattern.findall('TP Tutorialspo
เครื่องหมายคำถามมีการใช้งานในรูปแบบต่างๆ ใน Python Regular Expressions อักขระพิเศษ ? เป็นอักขระพิเศษ ? ทำให้ RE ที่เป็นผลลัพธ์ตรงกับ 0 หรือ 1 การซ้ำซ้อนของ RE ก่อนหน้า เอบีเอส? จะจับคู่กับ a หรือ ab เครื่องหมายคำถามตามตัวอักษร ? ใช้วิธีการดังต่อไปนี้ตามเอกสาร Python ทำให้ปริมาณไม่โลภ *?, +?, ??
นิพจน์ทั่วไปใช้อักขระแบ็กสแลช (\) เพื่อระบุรูปแบบพิเศษหรืออนุญาตให้ใช้อักขระพิเศษโดยไม่ใช้ความหมายพิเศษ สิ่งนี้ขัดแย้งกับการใช้อักขระตัวเดียวกันของ Python เพื่อจุดประสงค์เดียวกันในตัวอักษรสตริง ตัวอย่างเช่น หากต้องการจับคู่แบ็กสแลชตามตัวอักษร เราอาจต้องเขียน \\\\ เป็นสตริงรูปแบบ เนื่องจากนิพจน์ทั่วไ
เราใช้ re.escape() เพื่อหลีกหนีจากอักขระพิเศษ - โค้ดต่อไปนี้แสดงให้เห็นว่าอักขระพิเศษทั้งหมดในสตริงที่กำหนดนั้นใช้ Escape โดยใช้วิธี re.escape() ได้อย่างไร >>> p = '5*(67).89?' >>> re.escape(p) '5\\*\\(67\\)\\.89\\?'
เมธอด re.split() re.split(รูปแบบ, สตริง, [maxsplit=0]): วิธีนี้ช่วยในการแยกสตริงตามรูปแบบที่กำหนด ตัวอย่าง import re result=re.split(r'a','Dynamics') print result ผลลัพธ์ ['Dyn', 'mics'] ด้านบน เราได้แยกสตริง “Dynamics” ด้วย “a” วิธีการ split() มีอาร์กิวเมนต์อื่น maxs
โค้ดต่อไปนี้ใช้ Python regex เพื่อแยกสตริงที่กำหนดด้วยตัวคั่นหลายตัว ตัวอย่าง import re s = 'Beautiful; Soup\n is, good: Python* application' result = re.split('; |, |\*|\n|:',s) print result ผลลัพธ์ สิ่งนี้ให้ผลลัพธ์ ['Beautiful', 'Soup', ' is', 'good
หากเราต้องการแยกตัวเลข/หลักทั้งหมดออกจากข้อความที่กำหนด เราจะใช้ regex ต่อไปนี้ ตัวอย่าง import re s = '12345 abcdf 67' result=re.findall(r'\d', s) print result ผลลัพธ์ ['1', '2', '3', '4', '5', '6', '7'] หากเราต้องการแยกกลุ่มขอ
โค้ดต่อไปนี้โดยใช้ Python regex จะดึงวันที่จากสตริงที่กำหนด ตัวอย่าง import datetime from datetime import date import re s = "Jason's birthday is on 1991-09-21" match = re.search(r'\d{4}-\d{2}-\d{2}', s) date = datetime.datetime.strptime(match.group(), '%Y-%m-%d').date(
โค้ดต่อไปนี้แยกตัวเลขลอยตัวจากข้อความ/สตริงที่กำหนดโดยใช้ Python regex ตัวอย่าง import res =ระดับเสียง:-11.7 db หรือ 15.2 หรือ 8 dbresult =re.findall(r[-+]?\d*\.\d+|\d+, s)print results ผลลัพธ์ สิ่งนี้ให้ผลลัพธ์ [-11.7, 15.2, 8]
โค้ดต่อไปนี้โดยใช้ Python regex จะแยก id อีเมลจากสตริง/ข้อความที่กำหนด ตัวอย่าง import re s ='[email protected]' result =re.findall('[a-zA-Z0-9]\S*@\S*[a-zA-Z]', s) print result ผลลัพธ์ สิ่งนี้ให้ผลลัพธ์ ['[email protected]']
ต่อไปนี้คือตัวอย่างพื้นฐานของนิพจน์ทั่วไปของ Python สองตัวอย่าง เมธอด re.match() จะค้นหาการจับคู่หากเกิดขึ้นที่จุดเริ่มต้นของสตริง ตัวอย่างเช่น การเรียก match() บนสตริง TP Tutorials Point TP และมองหารูปแบบ TP จะตรงกัน อย่างไรก็ตาม หากเราค้นหาเฉพาะ Tutorials รูปแบบจะไม่ตรงกัน มาเช็คโค้ดกัน ตัวอย่าง