【iOS】去除字符串首尾空格或某字符
在iOS的实际开发中,常会出现需要去除空格的情况,总结有三种情况:
- 去除字符串首尾连续字符(如空格);
- 去除字符串首部连续字符(如空格);
- 去除字符串尾部连续字符(如空格);
去除字符串首尾连续字符(如空格)
NSString *a = @" a sdf ";
[a stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]];
去除字符串首部连续字符(如空格);
NSString *a = @" a sdf ";
NSString *leftResult = [a stringByTrimmingLeftCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];
#import "NSString+util.h"
@implementation NSString (util)
- (NSString *)stringByTrimmingLeftCharactersInSet:(NSCharacterSet *)characterSet {
NSUInteger location = 0;
NSUInteger length = [self length];
unichar charBuffer[length];
[self getCharacters:charBuffer range:NSMakeRange(0, length)];
for (NSInteger i = 0; i < length; i++) {
if (![characterSet characterIsMember:charBuffer[i]]) {
location = i;
break;
}
}
return [self substringWithRange:NSMakeRange(location, length - location)];
}
去除字符串尾部连续字符(如空格);
NSString *a = @" a sdf ";
NSString *rightResult = [a stringByTrimmingRightCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];
- (NSString *)stringByTrimmingRightCharactersInSet:(NSCharacterSet *)characterSet {
NSUInteger length = [self length];
unichar charBuffer[length];
[self getCharacters:charBuffer range:NSMakeRange(0, length)];
NSUInteger subLength = 0;
for (NSInteger i = length; i > 0; i--) {
if (![characterSet characterIsMember:charBuffer[i - 1]]) {
subLength = i;
break;
}
}
return [self substringWithRange:NSMakeRange(0, subLength)];
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
2018-08-29 NSRegularExpression iOS自带的正则表达式
2017-08-29 wesome-android
2016-08-29 如何在mac本上安装android sdk
2016-08-29 Mac OS X 中安装JDK7
2016-08-29 导入一个AndroidStudio工程作为一个Library Module
2016-08-29 Android Studio导入第三方类库的方法
2014-08-29 Intent Flag介绍 intent.addFlags()