скажем, есть шесть строк
- "abcd bbb ccc"
- "abce bbb ccc"
"abcf bbb ccc"
"aaa abcd ccc"
- "aaa abce ccc"
- "aaa abcf ccc"
Пользователь вводит выражение "<abc[!e]
"
Это выражение переводится в следующее регулярное выражение "^ abc [^ e]"
Переведенное регулярное выражение будет успешно соответствовать строкам 1 и 3
Если бы я хотел сопоставить строки 4 и 6, выражение должно быть переведено в "\ Wabc [^ e]" (это также совпадало бы с пробелом перед abc chars :(, что не очень хорошо)
К сожалению, введенное пользователем выражение необходимо преобразовать в регулярное выражение, которое будет соответствовать как 1,3, так и 4,6 строкам.
Есть ли способ перевести введенное пользователем выражение в регулярное выражение, которое бы объединяло выражения "^ abc [^ e]" и "\ Wabc [^ e]" (в идеале второе выражение не должно совпадать с первым пробелом :))