ฉันพยายามสร้างสคริปต์เพื่อทำการค้นหาแบบฟัซซีภายในบัฟเฟอร์ แนวคิดหลักคือการใช้การป้อนข้อมูลบางส่วนและแทรก.\{-}
ระหว่างคู่ของตัวละครทุกเช่นกลายเป็นfoo
f.\{-}o.\{-}o
วิธีนี้ใช้งานได้ดี แต่มีการจับคู่ที่ไม่เหมาะเป็นจำนวนมาก ฉันคิดว่าการค้นหาที่คลุมเครือควรให้ผลการแข่งขันที่สั้นที่สุดก่อน ลองพิจารณาตัวอย่างต่อไปนี้:
public void put()
การค้นหาคลุมเครือput
(เช่นนั้นp.\{-}u.\{-}t
) จะจับคู่สตริงทั้งหมดpublic void put
แต่การย่อตัวput
ภายในนั้นจะมีประโยชน์มากกว่า
ผู้ดำเนินการที่ไม่ใช่โลภเก่งในการค้นหาการแข่งขันที่สิ้นสุดก่อนหน้านี้ แต่ฉันต้องการบางสิ่งที่สามารถทำได้ในเวลาเดียวกันต้องการการแข่งขันที่เริ่มต้นในภายหลัง ตามหลักการแล้วมันไม่ควรโลภทั้งสองทิศทาง เป็นไปได้ไหม