iOS - 3位数添加一个逗号

添加如下NSString类别,代码如下

.h

#import <Foundation/Foundation.h>

@interface NSString (Comma)

+(NSString*)strmethodComma:(NSString*)string;

@end

.m

#import "NSString+Comma.h"

@implementation NSString (Comma)

+(NSString*)strmethodComma:(NSString*)str
{
    
    NSString *intStr;
    
    NSString *floStr;
    
    if ([str containsString:@"."]) {
        
        NSRange range = [str rangeOfString:@"."];
        
        floStr = [str substringFromIndex:range.location];
        
        intStr = [str substringToIndex:range.location];
        
    }else{
        
        floStr = @"";
        
        intStr = str;
        
    }
    
    if (intStr.length <=3) {
        
        return [intStr stringByAppendingString:floStr];
        
    }else{
        
        NSInteger length = intStr.length;
        
        NSInteger count = length/3;
        
        NSInteger y = length%3;
        
        NSString *tit = [intStr substringToIndex:y] ;
        
        NSMutableString *det = [[intStr substringFromIndex:y] mutableCopy];
          
        for (int i =0; i < count; i ++) {
            
            NSInteger index = i + i *3;
            
            [det insertString:@","atIndex:index];
            
        }
        
        if (y ==0) {
            
            det = [[det substringFromIndex:1]mutableCopy];
            
        }
        
        intStr = [tit stringByAppendingString:det];
        
        return [intStr stringByAppendingString:floStr];
        
    }
}
@end

简便方式请参考:https://www.jianshu.com/p/3689f115ff18
http://www.unicode.org/reports/tr35/tr35-31/tr35-numbers.html#Number_Format_Patterns
感谢!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容