Я пытаюсь найти разницу в тексте между двумя строковыми значениями в Lua, и я просто не совсем уверен, как это сделать эффективно. Я не очень опытен в работе с строковыми шаблонами, и я уверен, что это мое падение на этом. Вот пример:Поиск «разницы» между двумя строковыми текстами (пример Lua)
-- Original text
local text1 = "hello there"
-- Changed text
local text2 = "hello.there"
-- Finding the alteration of original text with some "pattern"
print(text2:match("pattern"))
В приведенном выше примере, я бы хотел, чтобы выводить текст, так что разница между этими двумя текстами «». То же самое касается случаев, когда разница может быть чувствительна к струнной модели, как это:
local text1 = "hello there"
local text2 = "hello()there"
print(text2:match("pattern"))
В этом примере я хотел бы напечатать «(» так как в этот момент новая строка больше не согласуется с старый.
Если у кого есть какие-либо понять по этому поводу, я действительно ценю это. к сожалению, я не мог дать больше работать с кодовым мудр, я просто не знаю, с чего начать.
что должно быть разница для «привет» и «привет htere» – Steve
В идеале, просто «ч» в «htere». Я просто пытаюсь найти именно то, где в измененном тексте, что это уже не согласовано, и просто отключить его в этот момент и вернуть разницу. Этот второй пример немного вводил в заблуждение, я на самом деле хотел сказать, что он должен возвращать "(", вместо "()". Я исправлю это. – user7385467
, тогда вы сможете сделать цикл for для итерации по всем символы в строке один и сравните с строкой 2. Когда вы найдете несоответствие, тогда остановите – Steve