ฉันกำลังออกแบบเครื่องมือทดสอบนิพจน์ปกติใน HTML และ JavaScript ผู้ใช้จะป้อน regex สตริงและเลือกฟังก์ชั่นที่พวกเขาต้องการทดสอบด้วย (เช่นค้นหาจับคู่แทนที่ ฯลฯ ) ผ่านปุ่มตัวเลือกและโปรแกรมจะแสดงผลลัพธ์เมื่อฟังก์ชันนั้นทำงานด้วยอาร์กิวเมนต์ที่ระบุ โดยธรรมชาติจะมีกล่องข้อความเพิ่มเติมสำหรับการขัดแย้งพิเศษเพื่อแทนที่และเช่น
ปัญหาของฉันคือรับสตริงจากผู้ใช้และเปลี่ยนเป็นนิพจน์ทั่วไป ถ้าผมบอกว่าพวกเขาไม่จำเป็นต้องมี//
's รอบ regex ที่พวกเขาใส่ธงแล้วพวกเขาก็ไม่สามารถตั้งค่าเช่นและg
i
ดังนั้นพวกเขาจะต้องมีการ//
แสดงออก แต่ฉันจะแปลงสตริงนั้นเป็น regex ได้อย่างไร มันไม่สามารถเป็นตัวอักษรตั้งแต่สตริงและฉันไม่สามารถผ่านไปยังตัวสร้างนิพจน์ทั่วไปตั้งแต่สตริงไม่มันโดยไม่ต้อง//
's มีวิธีอื่นที่จะทำให้ผู้ใช้ป้อนสตริงใน regex หรือไม่ ฉันจะต้องแยกสตริงและธงของ regex ด้วย//
แล้วสร้างมันอีกวิธีหนึ่งหรือไม่ ฉันควรให้พวกเขาใส่สายแล้วใส่ธงแยกต่างหาก?