首页 > 代码库 > IOS 字符串中去除特殊符号 stringByTrimmingCharactersInSet

IOS 字符串中去除特殊符号 stringByTrimmingCharactersInSet

先上个例子:

NSString * str1 =[nameInput.text stringByTrimmingCharactersInSet:[NSCharacterSetwhitespaceAndNewlineCharacterSet]];

NSString * str2 =[passwdInput.text stringByTrimmingCharactersInSet:[NSCharacterSetwhitespaceAndNewlineCharacterSet]];

[self.delegate loginActionInView:self name:str1 passwd:str2];

 

转载自:http://blog.csdn.net/aiyongyyy/article/details/8269546

 

在iOS中 可以使用stringByTrimmingCharactersInSet函数过滤字符串中的特殊符号

 

首先自己定义一个NSCharacterSet, 包含需要去除的特殊符号

    

NSCharacterSet *set = [NSCharacterSet characterSetWithCharactersInString:@"@/:;()¥「」"、[]{}#%-*+=_\\|~<>$€^?‘@#$%^&*()_+‘\""];

 

由于NSString中有全角符号和半角符号, 因此有些符号要包括全角和半角的

 

然后调用stringByTrimmingCharactersInSet

 

NSString *trimmedString = [string stringByTrimmingCharactersInSet:set];

 

trimmedString就是过滤后的字符串

 

 

 

----------------------------------------------------------

http://blog.sina.com.cn/s/blog_5421851501014xif.html

 

去除 username中的空格,table newline,nextline 
代码如下:(三行代码) 

NSCharacterSet *whitespace = [NSCharacterSet  whitespaceAndNewlineCharacterSet]; 

NSString * username = [mUsernameField  stringValue]; 

username = [username  stringByTrimmingCharactersInSet:whitespace]; 



注释: 

stringByTrimmingCharactersInSet
Returns a new string made by removing from both ends of the receiver characters contained in a given character set. 

whitespaceAndNewlineCharacterSet 
Returns a character set containing only the whitespace characters space (U+0020) and tab (U+0009) and the newline and nextline characters (U+000A–U+000D, U+0085). 

另外可以用 whitespaceCharacterSet 替换 whitespaceAndNewlineCharacterSet 区别newline nextline 
whitespaceCharacterSet 
Returns a character set containing only the in-line whitespace characters space (U+0020) and tab (U+0009).

 

 

NSString *temptext = [messageTextField.text stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];
NSString *text = [temptext stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet ]];

 

 

使用stringByTrimmingRightCharactersInSet 方法去掉一个字符串最右边的空格。

C代码  
  1. NSLog(@"%@",[@"abc  123   " stringByTrimmingRightCharactersInSet:[NSCharacterSet whitespaceCharacterSet]]);  

 

 如何去掉一个字符串@ “0.012300 ”最右边的“0 “呢?这是典型的float 格式化成字符串以后的形式,显示时最好去掉最右边的“0 ”。

解决方法如下:

C代码  
  1. [@"0.012300" stringByTrimmingRightCharactersInSet:[NSCharacterSet characterSetWithCharactersInString:@"0"]];

IOS 字符串中去除特殊符号 stringByTrimmingCharactersInSet