Я не уверен, что регулярные выражения здесь лучшее решение, но они кажутся достаточно логичными; Я просто не знаю, как это реализовать.
По сути, я хочу, чтобы мой пользователь мог вводить имя метода и проверять его достоверность после каждого ввода символа. Я определил допустимый формат функции как регулярное выражение, и достаточно легко проверить, совпадают ли они. Проблема в том, что я хотел бы иметь возможность выполнить частичное совпадение, чтобы пользователь знал: «Пока что это действительно».
Например,
+(NSString *)thisIsAValid:(ObjectiveC *)method;
- допустимый метод. Ему может соответствовать простая строка регулярного выражения, например
[\+-]\(w+\s*\*?\)\w+....etc...
. Но я бы хотел иметь возможность иметь ту же самую строку регулярного выражения "match"
+(NSStr
(что, как я понимаю, является своего рода обратным способом использования регулярного выражения). Я бы по-прежнему не хотел, чтобы регулярное выражение соответствовало
Q)(NStr
Есть ли способ реализовать что-то подобное с помощью стандартных функций регулярных выражений, или мне придется сделать что-то более радикальное?
Большое спасибо! Вы, ребята, бесценны.
Поразмыслив, я полагаю, что мог бы сделать свой вопрос немного более ясным (а также немного более кратким): Обычно для поиска шаблона в тексте используется регулярное выражение. То есть, сколько раз в этом абзаце встречается слово «кот» или «кроватка». Я хочу сделать наоборот, искать строку «в» регулярном выражении. То есть, какая часть этой строки, начиная с начала, соответствует этому регулярному выражению.В конечном итоге я хотел бы вернуть индекс, при котором строка перестает соответствовать рассматриваемому регулярному выражению.