Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python
Python
  1. อะไรคือความแตกต่างระหว่าง '.' , '?' และ '*' ในนิพจน์ปกติของ Python?

    อักขระพิเศษจุด . (จุด) ในโหมดเริ่มต้น จะจับคู่อักขระใดๆ ยกเว้นขึ้นบรรทัดใหม่ หากมีการระบุแฟล็ก DOTALL จะตรงกับอักขระใดๆ รวมทั้งขึ้นบรรทัดใหม่ อักขระพิเศษ ? ทำให้ RE ที่เป็นผลลัพธ์ตรงกับ 0 หรือ 1 การซ้ำซ้อนของ RE ก่อนหน้า เอบีเอส? จะจับคู่กับ a หรือ ab เครื่องหมายดอกจันอักขระพิเศษ* ทำให้ RE ที่

  2. จะเปรียบเทียบนิพจน์ทั่วไปใน Perl และ Python ได้อย่างไร

    คุณลักษณะ regex พื้นฐานที่สุดเกือบจะเหมือนกันในเกือบทุกการใช้งาน:wild character ., quantifiers *, + และ ?, anchors ^ และ $, character class ภายใน [] และ back references \1, \2, \3etc. การสลับจะถูกแสดง | ใน Perl และ Python Perl และ Python จะช่วยให้คุณแก้ไขนิพจน์ทั่วไปด้วย (?aimsx) ตัวอย่างเช่น (?i)

  3. จะจำลองวิธี scanf () โดยใช้ Python ได้อย่างไร

    ตามเอกสารของ Python ปัจจุบัน Python ไม่มีสิ่งที่เทียบเท่ากับ scanf() นิพจน์ทั่วไปมักจะมีประสิทธิภาพมากกว่า แม้ว่าจะมีรายละเอียดมากกว่าสตริงรูปแบบ scanf() ตารางด้านล่างนำเสนอการจับคู่ที่เทียบเท่าไม่มากก็น้อยระหว่างโทเค็นรูปแบบ scanf() และนิพจน์ทั่วไป scanf() TokenRegular Expression %c . %5c .

  4. คุณช่วยอธิบาย Python Regular Expression Syntax ด้วยวิธีง่ายๆ ได้ไหม?

    นิพจน์ทั่วไปคือลำดับของอักขระที่ใช้เป็นหลักในการค้นหาและแทนที่รูปแบบในสตริงหรือไฟล์ Python Regular expression Syntax ใช้อักขระสองประเภท − อักขระ Meta:ตามชื่อที่แนะนำ อักขระเหล่านี้มีความหมายพิเศษ คล้ายกับ * ในไวด์การ์ด อักษร (เช่น a,b,1,2…) นิพจน์ทั่วไปของ Python ใช้สตริงดิบ ปริมาณ คลาสอั

  5. อะไรคือความแตกต่างระหว่างเมธอด re.match(), re.search() และ re.findall() ใน Python

    re.match(), re.search() และ re.findall() เป็นวิธีการของโมดูล Python re. เมธอด re.match() เมธอด re.match() จะค้นหาการจับคู่หากเกิดขึ้นที่จุดเริ่มต้นของสตริง ตัวอย่างเช่น การเรียก match() บนสตริง TP Tutorials Point TP และมองหารูปแบบ TP จะตรงกัน ตัวอย่าง import re result = re.match(r'TP', '

  6. ฉันจะล้างแคชนิพจน์ทั่วไปใน Python ได้อย่างไร

    ในปัจจุบัน เมื่อมีการคอมไพล์นิพจน์ทั่วไป ผลลัพธ์จะถูกแคชไว้ ดังนั้นหากมีการคอมไพล์ regex เดียวกันอีกครั้ง ไฟล์นั้นจะถูกดึงมาจากแคชและไม่ต้องใช้ความพยายามพิเศษใดๆ แคชนี้รองรับได้ถึง 100 รายการ เมื่อถึงรายการที่ 100 แคชจะถูกล้างและคอมไพล์ใหม่จะต้องเกิดขึ้น วัตถุประสงค์ของการแคชคือเพื่อลดเวลาการโทรเฉล

  7. จะจับข้อยกเว้นที่เกิดจากนิพจน์ Python Regular ได้อย่างไร

    เมื่อใช้วิธีการจับคู่ หากปรากฎว่าไม่มีการจับคู่ จะไม่มีการส่งกลับ ไม่มีฟังก์ชันในโมดูล re ที่แสดงข้อยกเว้นเมื่อรายการหรือรายการที่ตรงกันว่างเปล่า ข้อผิดพลาด re.error ข้อยกเว้นเกิดขึ้นเมื่อสตริงส่งผ่านไปยังฟังก์ชันใดฟังก์ชันหนึ่งที่นี่ ไม่ใช่นิพจน์ทั่วไปที่ถูกต้อง (เช่น อาจมีวงเล็บที่ไม่ตรงกัน) หรื

  8. จะรับจำนวนแคปเจอร์กรุ๊ปในนิพจน์ปกติของ Python ได้อย่างไร

    โค้ดต่อไปนี้รับจำนวนกลุ่มที่ดักจับโดยใช้ Python regex ในสตริงที่กำหนด ตัวอย่าง import re m = re.match(r"(\d)(\d)(\d)", "632") print len(m.groups()) ผลลัพธ์ สิ่งนี้ให้ผลลัพธ์ 3

  9. ฉันจะค้นหารายการที่ตรงกันทั้งหมดกับนิพจน์ทั่วไปใน Python ได้อย่างไร

    เราใช้วิธีการ re.findall หรือ re.finditer เพื่อค้นหารายการที่ตรงกันทั้งหมดกับวิธีปกติ re.findall(pattern, string) ส่งคืนรายการสตริงที่ตรงกัน re.finditer(pattern, string) ส่งคืนตัววนซ้ำเหนือวัตถุ MatchObject

  10. จะค้นหาคำวิเศษณ์ทั้งหมดและตำแหน่งในข้อความโดยใช้นิพจน์ทั่วไปของ python ได้อย่างไร

    ตามเอกสารของ Python หากต้องการข้อมูลเพิ่มเติมเกี่ยวกับรูปแบบที่ตรงกันทั้งหมดมากกว่าข้อความที่ตรงกัน finditer() จะมีประโยชน์เนื่องจากมีวัตถุที่ตรงกันแทนที่จะเป็นสตริง หากใครเป็นนักเขียนที่ต้องการค้นหาคำวิเศษณ์และตำแหน่งของคำวิเศษณ์ทั้งหมดในบางข้อความ เขาหรือเธอจะใช้ finditer() ในลักษณะดังต่อไปนี้ − &

  11. วิธีเขียน Python Regular Expression ค้นหาตัวเลขซ้ำเป็นตัวเลขได้อย่างไร

    โค้ดต่อไปนี้โดยใช้ Python regex เพื่อค้นหาตัวเลขที่ซ้ำกันในสตริงที่กำหนด ตัวอย่าง import re result = re.search(r'(\d)\1{3}','54222267890' ) print result.group() ผลลัพธ์ สิ่งนี้ให้ผลลัพธ์ 2222

  12. จะใช้อักขระพิเศษใน Python Regular Expression ได้อย่างไร?

    จากเอกสารประกอบของ Python อักขระที่ไม่พิเศษตรงกับตัวเอง อักขระพิเศษไม่ตรงกัน - \ หลีกเลี่ยงอักขระพิเศษหรือเริ่มลำดับ . จับคู่อักขระใดๆ ยกเว้นขึ้นบรรทัดใหม่ ดู re.DOTALL ^ จับคู่จุดเริ่มต้นของสตริง ดู re.MULTILINE $ จับคู่ส่วนท้ายของสตริง โปรดดู re.MULTILINE [ ] ใส่ชุดอักขระที

  13. จะใช้ไวด์การ์ดในนิพจน์ปกติของ Python ได้อย่างไร

    โค้ดต่อไปนี้ใช้อักขระ Python regex .()dot สำหรับอักขระตัวแทนซึ่งหมายถึงอักขระใดๆ ที่ไม่ใช่การขึ้นบรรทัดใหม่ ตัวอย่าง import re rex = re.compile('th.s') l = "this, thus, just, then" print rex.findall(l) ผลลัพธ์ ให้ผลลัพธ์ ['this', 'thus']

  14. จะเขียนนิพจน์ทั่วไปของ Python เพื่อรับแท็ก anchor ทั้งหมดในหน้าเว็บได้อย่างไร

    โค้ดต่อไปนี้แยกแท็กทั้งหมดในสตริงที่กำหนด ตัวอย่าง import re rex = re.compile(r'[\<\>]') l = "this is text1 <a href='irawati.com' target='_blank'>hi</a> this is text2" print rex.findall(l) ผลลัพธ์ ['<', '>', '<', &#

  15. จะใช้ range ในนิพจน์ปกติของ Python ได้อย่างไร?

    ช่วงในนิพจน์ทั่วไป ช่วงของอักขระสามารถระบุได้โดยให้อักขระสองตัวและคั่นด้วย - เช่น [a-z] จะจับคู่ตัวอักษร ASCII ตัวพิมพ์เล็ก [0-5][0-9] จะตรงกัน ตัวเลขสองหลักทั้งหมดตั้งแต่ 00 ถึง 59 ถ้า - เป็นอักขระหลีก (เช่น [a\-z]) หรือถ้าใส่เป็นอักขระตัวแรกหรือตัวสุดท้าย (เช่น [a-]) จะจับคู่กับตัวอักษร - regex

  16. อะไรคือความแตกต่างระหว่างวิธีการ re.findall() และ re.finditer() ที่มีอยู่ใน Python

    วิธีการ re.findall() re.findall() ช่วยในการรับรายการรูปแบบที่ตรงกันทั้งหมด มันค้นหาจากจุดเริ่มต้นหรือจุดสิ้นสุดของสตริงที่กำหนด ถ้าเราใช้วิธี findall เพื่อค้นหารูปแบบในสตริงที่กำหนด มันจะคืนค่ารูปแบบที่เกิดขึ้นทั้งหมด ขณะค้นหารูปแบบ ขอแนะนำให้ใช้ re.findall() เสมอ โดยจะทำงานเหมือน re.search() และ r

  17. แบ็กสแลชทำงานอย่างไรใน Python Regular Expressions

    ตามเอกสารของ Python บางที metacharacter ที่สำคัญที่สุดในนิพจน์ทั่วไปคือแบ็กสแลช \. เช่นเดียวกับตัวอักษรสตริง Python แบ็กสแลชสามารถตามด้วยอักขระต่างๆ เพื่อระบุลำดับพิเศษต่างๆ นอกจากนี้ยังใช้เพื่อหลีกหนีจากอักขระเมตาทั้งหมด ดังนั้นคุณจึงยังสามารถจับคู่พวกมันในรูปแบบต่างๆ ได้ ตัวอย่างเช่น หากคุณต้องการ

  18. จะเขียนนิพจน์ทั่วไปของ Python เพื่อใช้ re.findall() ได้อย่างไร

    re.findall() ช่วยในการรับรายการรูปแบบที่ตรงกันทั้งหมด มันค้นหาจากจุดเริ่มต้นหรือจุดสิ้นสุดของสตริงที่กำหนด ถ้าเราใช้วิธี findall เพื่อค้นหารูปแบบในสตริงที่กำหนด มันจะคืนค่ารูปแบบที่เกิดขึ้นทั้งหมด ขณะค้นหารูปแบบ ขอแนะนำให้ใช้ re.findall() เสมอ โดยจะทำงานเหมือน re.search() และ re.match() ทั้งคู่ ตัวอ

  19. จะเขียน Python Regular Expression เพื่อตรวจสอบตัวเลขได้อย่างไร

    รหัสต่อไปนี้ตรวจสอบตัวเลขว่าเท่ากับ 2018 ตัวอย่าง import re s = '2018' match = re.match(r'\b2018\b',s) print match.group() ผลลัพธ์ สิ่งนี้ให้ผลลัพธ์ 2018 ตัวอย่าง รหัสต่อไปนี้ตรวจสอบจำนวนเต็มบวกห้าหลักใดๆ import re s = '2346' match = re.match(r'(?<!-)\b[1-9]\d{4}\b&#

Total 8994 -คอมพิวเตอร์  FirstPage PreviousPage NextPage LastPage CurrentPage:37/450  20-คอมพิวเตอร์/Page Goto:1 31 32 33 34 35 36 37 38 39 40 41 42 43