parser

ผู้เขียน: Peter Berry
วันที่สร้าง: 12 สิงหาคม 2021
วันที่อัปเดต: 1 กรกฎาคม 2024
Anonim
Building a Parser from scratch. Lecture [1/18]: Tokenizer | Parser
วิดีโอ: Building a Parser from scratch. Lecture [1/18]: Tokenizer | Parser

เนื้อหา

คำจำกัดความ - Parser หมายถึงอะไร

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


ข้อมูลเบื้องต้นเกี่ยวกับ Microsoft Azure และ Microsoft Cloud | ในคู่มือนี้คุณจะได้เรียนรู้ว่าการประมวลผลแบบคลาวด์คืออะไรและ Microsoft Azure สามารถช่วยคุณในการโยกย้ายและดำเนินธุรกิจจากคลาวด์อย่างไร

Techopedia อธิบาย Parser

parser มักใช้เป็นส่วนประกอบของล่ามหรือคอมไพเลอร์ กระบวนการโดยรวมของการแยกวิเคราะห์เกี่ยวข้องกับสามขั้นตอน:

  1. การวิเคราะห์คำศัพท์: ตัววิเคราะห์คำถูกใช้เพื่อสร้างโทเค็นจากสตรีมของอักขระสตริงอินพุตซึ่งแบ่งออกเป็นองค์ประกอบขนาดเล็กเพื่อสร้างนิพจน์ที่มีความหมาย
  2. การวิเคราะห์วากยสัมพันธ์: ตรวจสอบว่าโทเค็นที่สร้างขึ้นนั้นแสดงออกอย่างมีความหมายหรือไม่ สิ่งนี้ใช้ประโยชน์จากไวยากรณ์ที่ปราศจากความขัดแย้งซึ่งกำหนดขั้นตอนวิธีอัลกอริทึมสำหรับส่วนประกอบ งานเหล่านี้เพื่อจัดทำนิพจน์และกำหนดลำดับเฉพาะที่จะต้องวางโทเค็น
  3. Semantic Parsing: ขั้นตอนการแยกวิเคราะห์ขั้นสุดท้ายซึ่งมีการกำหนดความหมายและความหมายของนิพจน์ที่ตรวจสอบความถูกต้องและดำเนินการที่จำเป็น

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


  • การแยกวิเคราะห์จากบนลงล่าง: เกี่ยวข้องกับการค้นหาแผนผังการแยกวิเคราะห์เพื่อหาการสืบทอดส่วนใหญ่ด้านซ้ายของอินพุตสตรีมโดยใช้การขยายจากบนลงล่าง ตัวอย่าง ได้แก่ ตัวแยกวิเคราะห์ LL และตัวแยกวิเคราะห์แบบวนซ้ำ
  • การแยกวิเคราะห์จากล่างขึ้นบน: เกี่ยวกับการเขียนอินพุตกลับไปที่สัญลักษณ์เริ่มต้น การแยกประเภทนี้เรียกว่าการแยกวิเคราะห์การลดกะ ตัวอย่างหนึ่งคือตัวแยกวิเคราะห์ LR

Parsers ใช้กันอย่างแพร่หลายในเทคโนโลยีดังต่อไปนี้:

  • Java และภาษาโปรแกรมอื่น ๆ
  • HTML และ XML
  • ภาษาข้อมูลแบบโต้ตอบและภาษาคำนิยามของวัตถุ
  • ภาษาฐานข้อมูลเช่น SQL
  • ภาษาจำลองเช่นภาษาจำลองเสมือนจริง
  • ภาษาสคริปต์
  • โปรโตคอลเช่นการเรียกฟังก์ชั่น HTTP และอินเทอร์เน็ตระยะไกล