В настоящее время у меня есть код, который выглядит следующим образом:Lua Pattern Matching, получить символ перед матчем
somestring = "param=valueZ&456"
local stringToPrint = (somestring):gsub("(param=)[^&]+", "%1hello", 1)
StringToPrint будет выглядеть следующим образом:
param=hello&456
Я заменил все символы перед &
со строкой «привет». Здесь мой вопрос становится немного странным и конкретным.
Я хочу, чтобы моя строка отображалась как: param=helloZ&456
. Другими словами, я хочу сохранить символ прямо перед &
при замене строки valueZ
на hello
, чтобы сделать ее helloZ
. Как это может быть сделано?
Каков ожидаемый результат для '" param = valueZ & param = 456 "'? Или этого не может быть? Попробуйте 'somestring: gsub (" (param =) [^ &] + ([^ &]) ","% 1hello% 2 ", 1)', см. Http://ideone.com/pHRgAT –