Я разрабатываю тестер регулярных выражений в HTML и JavaScript. Пользователь вводит регулярное выражение, строку и выбирает функцию, которую они хотят протестировать (например, поиск, совпадение, замена и т.д.) С помощью переключателя, и программа отображает результаты, когда эта функция запускается с указанными аргументами. Естественно, будут дополнительные текстовые поля для дополнительных аргументов для замены и т.д.
Моя проблема - получить строку от пользователя и превратить ее в регулярное выражение. Если я скажу, что им не нужно иметь // вокруг регулярного выражения, которое они вводят, то они не могут устанавливать флаги, такие как g и i. Поэтому они должны иметь // вокруг выражения, но как я могу преобразовать эту строку в регулярное выражение? Он не может быть литералом с его строки, и я не могу передать его конструктору RegExp, так как он не является строкой без //. Есть ли другой способ сделать строку ввода пользователя в регулярное выражение? Должен ли я проанализировать строку и флаги регулярного выражения с помощью //, а затем построить его другим способом? Должен ли я им вводить строку, а затем вводить флаги отдельно?