在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)];
}

【iOS】去除字符串首尾空格或某字符的更多相关文章

  1. trim()方法去除字符串首尾空格

    trim()方法去除字符串首尾空格 1.原生js                 Function trimStr(str){                         Return str.r ...

  2. [py]str list切片-去除字符串首尾空格-递归思想

    取出arr的前几项 #方法1 print([arr[0], arr[1]]) #方法2 arr2 = [] for i in range(2): arr2.append(arr[i]) print(a ...

  3. ios 消除 字符串 首尾空格

    本文转载至 http://blog.csdn.net/reylen/article/details/8233353 (1)系统去首尾空格方法,使用NSString中的str = [str string ...

  4. c语言实现去除字符串首尾空格

    字符串内存图如下: 引入头文件: 1 #include<stdlib.h> 2 #include<stdio.h> 3 #include<string.h> 函数原 ...

  5. jquery去除字符串首尾空格的方法:$.trim()

    <!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  6. 【Python实践-4】切片操作去除字符串首尾的空格

    #利用切片操作,实现一个trim()函数,去除字符串首尾的空格,注意不要调用str的strip()方法 def trim(s): while s[0:1]==' ': s=s[1:] while s[ ...

  7. JavaScript trim 实现(去除字符串首尾指定字符)

    String.prototype.trim = function (char, type) { if (char) { if (type == 'left') { return this.replac ...

  8. JavaScript trim 实现去除字符串首尾指定字符的简单方法

    String.prototype.trim = function (char, type) { if (char) { if (type == 'left') { return this.replac ...

  9. 利用切片操作,实现一个trim()函数,去除字符串首尾的空格,注意不要调用str的strip()方法

    1.利用切片操作,实现一个trim()函数,去除字符串首尾的空格,注意不要调用str的strip()方法 首先判断字符串的长度是否为0,如果是,直接返回字符串 第二,循环判断字符串的首部是否有空格,如 ...

随机推荐

  1. vue+websocket demo 实例

    vue+websocket demo: <!-- vue + websocket连接demo --> <template> <div class="" ...

  2. Please enable using preview .net core sdks

    工具=>选项=>环境=>预览功能=>使用.net core sdk的预览

  3. Python 初级 6 循环

    一.一个简单的for循环 1 重复做相同的事 for looper in [1, 2, 3, 4, 5]: print("hello") 1 looper的值从1开始, 所以loo ...

  4. 【翻译】Flink Table Api & SQL —Streaming 概念 —— 查询配置

    本文翻译自官网:Query Configuration  https://ci.apache.org/projects/flink/flink-docs-release-1.9/dev/table/s ...

  5. byte类型的取值为什么是-128~127

    参考:https://blog.csdn.net/qq_22771739/article/details/84496115 https://blog.csdn.net/boatalways/artic ...

  6. [编程开发]STB image读取学习

    为了便于学习图像处理并研究图像算法, 俺写了一个适合初学者学习的小小框架. 麻雀虽小五脏俱全. 采用的加解码库:stb_image 官方:http://nothings.org/ stb_image. ...

  7. 【视频开发】关于FFMPEG中内存泄漏的问题之av_bitstream_filter_filter

    How may I free pkt in an ffmpeg write frame method Rate this:      See more: C++ ffmpeg Greetings I' ...

  8. POJ 1941 The Sierpinski Fractal

    总时间限制: 1000ms 内存限制: 65536kB 描述 Consider a regular triangular area, divide it into four equal triangl ...

  9. SecureCRT日志优化

    SecureCRT日志优化 用了这么多ssh软件,但对secureCRT情有独钟.今天来对做一下对SecureCRT的优化 一.手动模式: 选择"File"->"L ...

  10. Miller_Rabin算法_单个素数检测_启发式算法

    /** Miller_Rabin 算法进行素数测试 快速判断一个<2^63的数是不是素数,主要是根据费马小定理 */ #define ll __int128 ; ///随机化算法判定次数 ll ...