Функция на C которая удаляет повторяющиеся пробелы из char*
Добавлено: 15 июн 2003, 14:20
У кого-нить есть Функция на C которая удаляет повторяющиеся пробелы из char*???
спасибо!
спасибо!
Linux-портал Республики Беларусь
https://forum.linux.by/
Код: Выделить всё
#include <stdio.h>
#include <string.h>
char* strip_spaces(const char* in, char* out)
{
char *p;
strcpy(out,in);
while(1)
{
p = strchr(out,' ');
if (p==NULL) break;
strcpy(p,p+1);
}
return out;
}
int main()
{
char *a = "ab ra ka da b ra";
char b[strlen(a)];
strip_spaces(a,b);
printf("%s\n",a);
printf("%s\n",b);
return 0;
}
Код: Выделить всё
fdFH EFEWHF gghlrg
Код: Выделить всё
fdFH EFEWHF gghlrg
Код: Выделить всё
#include <stdio.h>
#include <string.h>
char* strip_spaces(const char* in, char* out)
{
char *p;
strcpy(out,in);
while(1)
{
p = strstr(out," ");
if (p==NULL) break;
strcpy(p+1,p+2);
}
return out;
}
int main()
{
char *a = "ab raka da b r a";
char b[strlen(a)];
strip_spaces(a,b);
printf("%s\n",a);
printf("%s\n",b);
return 0;
}
Код: Выделить всё
#!/usr/bin/ruby
string.gsub(/ {1,}/,' ')
#!/bin/sh
echo $@|sed 's/ / /g'
[/code][uNIx]mend0za писал(а):ЗЫ: обожаю языковое сектантство, особенно в отношении ассемблера и Cи/C++Код: Выделить всё
#!/usr/bin/ruby string.gsub(/ {1,}/,' ') #!/bin/sh echo $@|sed 's/ / /g'
Код: Выделить всё
ruby -p -e '$_.gsub!(/ +/," ")'
Код: Выделить всё
perl -p -e 's/ +/ /'
Код: Выделить всё
awk '{gsub(/ +/," "); print}'
Код: Выделить всё
#!/bin/sh
for i in $@
do
RESULT="$RESULT $i"
done
echo $RESULT
[uNIx]mend0za писал(а):не ничего более отвратительного, чем обработка текстов в Cи
Pure Bourn Shell:Код: Выделить всё
#!/bin/sh for i in $@ do RESULT="$RESULT $i" done echo $RESULT
Код: Выделить всё
#!/bin/sh
function strip(){
while test -n "$1"
do
res="$res $1"
shift
done
echo $res
}
echo `strip "qq w ereee rr"`
А здесь что-нибудь об этом было? Я что-то не припомню...[uNIx]mend0za писал(а):когда один или 2 языка считаются "правильными"
а остальные - "типа пусть живут, я сегодня добрый"