Как я могу поместить строку в другую строку по позиции

Моя строка 'Hllo'. Я хочу поставить внутри него 'e' после 'H' по его позиции, в данном случае, позиции номер 2.


person user2418051    schedule 01.06.2013    source источник
comment
... и вы не хотите переписать l?   -  person user35443    schedule 01.06.2013
comment
Да, мне просто нужно поместить букву «е» в позицию 2, и остальная часть строки будет нажата.   -  person user2418051    schedule 01.06.2013


Ответы (3)


Вы можете просто вырезать содержимое до позиции, в которой вы хотите разместить своего персонажа, затем добавить символ и, наконец, объединить символы в позиции и после нее.

src = "Hllo"
result = string.sub(src, 1, string.find(src, "H")) .. "e" .. string.sub(src, string.find(src, "H")+1)

Первая часть кода получает позицию «H» и f обрезает начало (в данном случае только «H»). Вторая часть добавляет символ, который вы хотите вставить. Третья часть добавляет в результат каждый символ после «H» в исходной строке.

person user35443    schedule 01.06.2013
comment
Или, короче, src:sub(1, src:find("H")) .. "e" .. src:sub(src:find("H") + 1) - person Eric; 01.06.2013

ты можешь попробовать это

$arr = str_split('hllo',1);
$result=$arr[0].'e'.$arr[1].$arr[2].$arr[3]

person Yasir Ahmed    schedule 01.06.2013

person    schedule
comment
Очень умный! Я забыл о захвате позиции - person Eric; 01.06.2013
comment
Мне нравится! Однако первоначальный вопрос заключался в том, чтобы заменить позицию H, чего этот вариант не делает. - person dualed; 02.06.2013