main.m

 #import <Foundation/Foundation.h>
#import "NSString+Trim.h"
int main(int argc, const char * argv[]) {
@autoreleasepool {
NSString *strSource = @" Kenmu 我是啊武 ";
NSLog(@"“%@”去掉前后空格后为“%@”", strSource, [NSString trimWhitespace:strSource]); strSource = @"\nKenmu 我是啊武\n";
NSLog(@"“%@”去掉前后回车符后为“%@”", strSource, [NSString trimNewline:strSource]); strSource = @"\n Kenmu 我是啊武 \n";
NSLog(@"“%@”去掉前后空格和回车符后为“%@”", strSource, [NSString trimWhitespaceAndNewline:strSource]); strSource = @"$+Kenmu 我是啊武+$";
NSLog(@"“%@”去掉前后$和+符后为“%@”", strSource, [NSString trim:strSource trimCharacterSet:[NSCharacterSet symbolCharacterSet]]);
}
return ;
}

NSString+Trim.h

 #import <Foundation/Foundation.h>
@interface NSString (Trim)
+ (NSString *)trim:(NSString *)val trimCharacterSet:(NSCharacterSet *)characterSet;
+ (NSString *)trimWhitespace:(NSString *)val;
+ (NSString *)trimNewline:(NSString *)val;
+ (NSString *)trimWhitespaceAndNewline:(NSString *)val;
@end

NSString+Trim.m

 #import "NSString+Trim.h"
@implementation NSString (Trim)
+ (NSString *)trim:(NSString *)val trimCharacterSet:(NSCharacterSet *)characterSet {
NSString *returnVal = @"";
if (val) {
returnVal = [val stringByTrimmingCharactersInSet:characterSet];
}
return returnVal;
}
+ (NSString *)trimWhitespace:(NSString *)val {
return [self trim:val trimCharacterSet:[NSCharacterSet whitespaceCharacterSet]]; //去掉前后空格
}
+ (NSString *)trimNewline:(NSString *)val {
return [self trim:val trimCharacterSet:[NSCharacterSet newlineCharacterSet]]; //去掉前后回车符
}
+ (NSString *)trimWhitespaceAndNewline:(NSString *)val {
return [self trim:val trimCharacterSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]]; //去掉前后空格和回车符
}
@end

结果:

 -- ::08.192 OCNSStringTrim[:] “ Kenmu 我是啊武 ”去掉前后空格后为“Kenmu 我是啊武”
-- ::08.193 OCNSStringTrim[:] “\nKenmu 我是啊武\n”去掉前后回车符后为“Kenmu 我是啊武”
-- ::08.193 OCNSStringTrim[:] “\n Kenmu 我是啊武 \n”去掉前后空格和回车符后为“Kenmu 我是啊武”
-- ::08.194 OCNSStringTrim[:] “$+Kenmu 我是啊武+$”去掉前后$和+符后为“Kenmu 我是啊武”

Objective-C语法之字符串NSString去掉前后空格或回车符(可以是NSCharacterSet类型的其它字符)的更多相关文章

  1. NSString 去掉前后空格或回车符

    NSString *string = @" spaces in front and at the end "; NSString *trimmedString = [string ...

  2. Objective-C语法之字符串NSString

    Objective-C里核心的处理字符串的类就是NSString和 NSMutableString这两个类,这两个类完成了Objective-C中字符串大部分功能的处理.这两个类的最主要的区别是NSS ...

  3. 如何去掉word中的回车符??

    打开word界面,点击页面左上角的"文件"按钮,进入到文件栏目中,进行设置. 进入文件之后,在左下角找到并点击"选项",进入到word的设置界面中 进入到wor ...

  4. c++ 去掉所有空格及换行符

    string get_string(string res){ //删除换行符 int r = res.find('\r\n'); while (r != string::npos) { if (r ! ...

  5. 如何去掉MyEclipse中的空格符,回车符?

    我前几天不小心把空格符合回车符显示了出来,如图: 天啊,看了两天以后,我感觉整个人都不行了,眼花缭乱,于是就各种尝试,想要去掉,就有了如下方法,其实很简单 在eclipse中的菜单的 window-& ...

  6. Linux中文档去掉windows文本的多余的回车符(^M)

    1) 使用sed   去掉windows下的回车符 (注意^M 在linux 下写法 按^M 是回车换行符,输入方法是按住CTRL+v,松开v,按m) sed -i 's/^M//g' filenam ...

  7. Objective-C: 字符串NSString与NSMutableString

    字符串算是OC中非常重要和常用的一部分内容,OC中的字符串与我之前在学习C,C++,Java中的字符串有一定的不同,它非常类似于C++中容器的概念,但用法却与之还是有很大的不同,也许是因为OC的语法就 ...

  8. iOS开发--字典(NSDictionary)和JSON字符串(NSString)之间互转

    iOS开发--字典(NSDictionary)和JSON字符串(NSString)之间互转 1. 字典转Json字符串 // 字典转json字符串方法 -(NSString *)convertToJs ...

  9. objective C中的字符串NSStirng常用操作

    objective C中的字符串操作 在OC中创建字符串时,一般不使用C的方法,因为C将字符串作为字符数组,所以在操作时会有很多不方便的地方,在Cocoa中NSString集成的一些方法,可以很方便的 ...

随机推荐

  1. C#学习笔记(8)——委托应用(显示,写入时间)

    说明(2017-5-30 09:08:10): 1. 定义一个委托,public delegate void MyDel();无参数,无返回值. 2. 委托作为DoSth的参数,DoSth里面调用委托 ...

  2. Using the SAMA5D2-compatible ADC device

    Introduction Kernel Software triggers Unsigned single-ended channel conversion Setup Test procedure ...

  3. net-snmp 的配置

    http://www.cnblogs.com/oloroso/p/4595123.html

  4. js中表单数据序列化方式

    一共有以下三种: var obj1 = $('#queryForm').serialize(); var obj2 = $('#queryForm').serializeArray(); var ob ...

  5. linq操作符:串联操作符

    串联是一个将两个集合连接在一起的过程.在Linq中,这个过程通过Concat操作符实现.Concat操作符用于连接两个集合,生成一个新的集合.来看看Concat操作符的定义: public stati ...

  6. 为什么Java匿名内部类访问的外部局部变量或参数需要被final修饰

    大部分时候,类被定义成一个独立的程序单元.在某些情况下,也会把一个类放在另一个类的内部定义,这个定义在其他类内部的类就被称为内部类,包含内部类的类也被称为外部类. class Outer { priv ...

  7. Java线程状态及 wait、sleep、join、interrupt、yield等的区别

    Java中的线程状态(详见Java线程状态及转换-MarchOn): wait:Object类的实例方法,释放CPU执行权,进入等待状态,直到  被中断.被拥有该对象锁的线程唤醒(notify或not ...

  8. 解决DuplicateFileException: Duplicate files copied in APK META-INF/LICENSE(或META-INF/DEPENDENCIES)

    导入eclipse项目时报 Error:Execution failed for task ':app:transformResourcesWithMergeJavaResForDebug'.> ...

  9. javascript常用功能收藏

    引用:http://www.css88.com/archives/5180 收集了一些比较常用的javascript函数. 字符串长度截取 function cutstr(str, len) { va ...

  10. Ogre Compositor解析

    Compositor脚本与类型 我们先看下面一张基本的Compositor的脚本图: 上面就是一个Composition资源.在解析时,主要是使用CompositionPass, Compositio ...