compress函数用法详解

C学习实践—删除字符串中的指定字符,学习实践字符串

 1 #include<stdio.h>
 2 
 3 /** 删除字符串中的指定字符
 4  */
 5 #define LEN 50
 6 
 7 char * del_ch(char s[], char c); 
 8 
 9 int main(){
10     char str[] = "xyzxxguo";
11     char ch = 'x';
12     char *p;
13     printf("before delete ch: %s\n", str);
14     p = del_ch(str, ch);
15     printf("after delete ch: %s", p);
16 }
17 
18 char * del_ch(char s[], char c){
19     static char new_str[LEN];
20     int i = 0,j = 0;
21     while(s[i] != '\0'){
22         if(s[i] != c){
23             new_str[j++] = s[i];
24         }
25         i++;
26     }
27     new_str[j] = '\0';
28     return new_str;
29 }

 

http://www.bkjia.com/Cyy/1207868.htmlwww.bkjia.comtruehttp://www.bkjia.com/Cyy/1207868.htmlTechArticleC学习实践—删除字符串中的指定字符,学习实践字符串
1 #includestdio.h 2 3 /* *网赌平台哪个信誉好, 删除字符串中的指定字符 4 */ 5 #define
LEN 50 6 7 char * del_ch( char…

compress函数: 主要用来删除字符串中的特定字符.

1.compress函数的基本形式
compress(<source><, chars><, modifiers>)
Arguments
source: 指定一个字符串来源
chars: 指定要删除或者保留的字符列表,需用引号
modifiers: 指定修饰符,不区分大小写,用来控制compress 函数。

modifiers指定一个修饰符,函数的具体功能。如:
a 增加(A – Z, a – z)到初始字符里(chars)。
d 增加数字到初始字符里(chars)。
f 增加下划线和字母 (A – Z, a – z) 到初始字符里(chars)。
g 增加图形字符到初始字符里(chars)。
k 不移除初始字符(chars)而是返回这些字符。
l 增加小写字母(a – z)。
n 增加数字、下划线和字母(A – Z, a – z)。
p 增加标点符号。
s 增加空格,
包括空格、水平制表符、垂直制表符、回车符、换行符和换页符。
t 剪掉尾部空格。
u 增加大写字母(A – Z)。
w 增加可印刷的字符。
X 增加十六进制字符

2.compress函数应用举例
例1.删除空格:可以直接省去第二和第三个Arguments,也可以明确将空格加入到字符串列表中。
data _null_;
str=’Ab cd EF-123-456′;
str1=compress(str);
str2=compress(str,” “);
put str1= str2=;
run;

例2.使用修饰符删除小写字母:
将修饰符设定为”l”,代表lowcase,即将所有的小写字母加入到要删除的字符列表中;
如不用修饰符”l”,也可以直接把所有a-z的小写字母列入要删除的字符串列表当中,效果一样;
本例可以将所有小写字母和大写的”E”从指定的字符串中删除。
data _null_;
str=’Ab cd EF-123-456′;
str1=compress(str,’E’,’l’);
str2=compress(str,”abcdefghijklmnopqrstuvwxyzE”);
put str1= str2=;
run;

例3. 保留字符:只需将”K”或”k”写入修饰符;
保留数字:只需将”D”或”d”写入修饰符,或者在字符串列表中加入所有数字。
本例为保留所有数字和”EF”中的字符。
data _null_;
str=’Ab cd EF-123-456′;
str1=compress(str,’EF’,’kd’);
str2=compress(str,”EF1234567890″,’k’);
put str1= str2=;
run;

补充:
1.只有source,移除空格。
2.只有source,chars时,从source中移除chars。
3.source,chars,modifiers都有时,modifiers中的K决定保留还是移除。
无K时,移除chars加上modifiers指定的。

例如:
这两个都是移除数字:
compress(source, “1234567890”);
compress(source, , “d”);

You can leave a response, or trackback from your own site.

Leave a Reply

网站地图xml地图