Как строки вида aabbccddeeff преобразовать в aa-bb-cc-dd-ee-ff?
Встаешь в начало строки и нажимаешь: вправо, вправо, -, вправо, вправо, -, вправо, вправо, -, вправо, вправо, -, вправо, вправо, -.
$string2='':
for($i=0; $i<sizeof($string1)-2; $i+=2)
{
$string2.=$string1[$i].$string1[$i+1]."-";
}
$string2.=$string1[sizeof($string1)-2].$string1[sizeof($string1)-1];
![](/images/graemlins/grin.gif)
Спасибо всем за ответы, хватило и стандартных средств Mac OS. Просто компа с линухом под рукой не было,а были только с виндой.
procedure InsertMinuses(var InStr:string);
var Pos:Integer;
begin
for Pos:=Length(InStr) div 2-1 downto 1 do
Insert('-',InStr,Pos*2+1);
end;
C:
int InsertMinuses(const char * instr, char *outstr)
{
int i;
for(i=0;*instr;i++)
{
*outstr++=*instr++;
if (i%2 && *instr) *outstr++='-';
}
*outstr=0;
return i;
}
![](/images/graemlins/smile.gif)
Python:
def InsertMinuses(s):
return '-'.join(s[i:i+2] for i in xrange(0, len(s)-1, 2
$string =~ s/(\w\w?=\w)/$1-/g
+1!
а ну папки вима и эмакса предложите свои варианты =)
![](/images/graemlins/smile.gif)
![](/images/graemlins/blush.gif)
$string2=chunk_split($string1,2,'-');
:s/\(\(\S\)\2\)[^$]\@=/\1-/g
теперь хорошо работает
![](/images/graemlins/smile.gif)
Но vim это пипец.
![](/images/graemlins/grin.gif)
if(!strstr(str, "aabbccddeeff"
str = "aa-bb-cc-dd-ee-ff";
Память освобождать Пушкин будет?
![](/images/graemlins/laugh.gif)
Память освобождать Пушкин будет?- Память! Ты свободна!
А где она аллоцирована?
Угу, надо было преобразовать маки, выдаваемые IOS, в формат, который можно скормить URT-у.
Из приведенного контекста неясно, кто и когда положил в str значение. Т.е. могут быть оба варианта: память освобождать надо (например, прямо перед приведенным фрагментом идет аллокация и считывание строки из потока ввода) и не надо (если у нас еще где-то ссылка на строку есть).
нифига не работает
и как это у тебя получилось? пошагово, пожалуйста
а, нет, это видно у меня настройки gvim'а такие...в обычном vim'е работает...
Оставить комментарий
family
желательно как можно быстрее-ткните носом в документацию.