• 金额数字转中文大写(银行所需)


    - (NSString *)moneyStringWithDigitStr:(NSString *)digitString

    {

        NSLog(@"The begin string:%@",digitString);

        NSArray *datas = [NSArrayarrayWithObjects:@"", @"", @"", @"", @"", @"", @"", @"", @"", @"", nil];

        NSArray *infos = [NSArrayarrayWithObjects:@"", @"", @"", @"", @"", @"", @"", @"", @"亿", @"", @"", @"", @"", nil];

        

        NSMutableString *processString = [[NSMutableString alloc] initWithString:digitString];

        

        // creat a new mutable string

        NSMutableString *resultString = [NSMutableStringstring];

        int i = 0;

        int j = processString.length;

        

        // str:165047523

        // 1亿 6 5 0 4 7 5 2 3 ——> 壹亿 陆仟 伍佰 零拾 肆万 柒仟 伍佰 贰拾 叁分

        

        while (processString.length != 0) {

            

            // Add location tags after each number

            [resultString insertString:[infos objectAtIndex:i] atIndex:0];

            i++;

            

            // Obtain a character (a number), then the number corresponding uppercase characters restructuring to the ‘resultString’

            j--;

            NSString *specifiedNumberStrAtIndex = [processString substringWithRange:NSMakeRange(j, 1)];

            int specifiedNumber = [specifiedNumberStrAtIndex intValue];

            

            int number = specifiedNumber % 10;

            

            [resultString insertString:[datas objectAtIndex:number] atIndex:0];

            

            // Delete of a character, so that the next time through the loop with

            [processString deleteCharactersInRange:NSMakeRange(j, 1)];

            

            NSLog(@"resultString = %@",resultString);

        }

        

        NSString *moneyString = [NSString stringWithFormat:@"%@",resultString];

        

        // To use regular expressions to replace specific characters

        NSError *error=nil;

        NSArray *expressions = [NSArrayarrayWithObjects:@"[拾佰仟]", @"+亿", @"+", @"+", @"+",@"亿万",nil];

        NSArray *changes = [NSArray arrayWithObjects:@"", @"亿",@"",@"",@"",@"亿",nil];

        

        for (int k = 0; k < 6; k++)

        {

            NSRegularExpression *reg=[[NSRegularExpressionalloc] initWithPattern:[expressions objectAtIndex:k] options:NSRegularExpressionCaseInsensitiveerror:&error];

            

            moneyString = [reg stringByReplacingMatchesInString:moneyString options:0range:NSMakeRange(0, moneyString.length) withTemplate:[changes objectAtIndex:k]];

            

            NSLog(@"moneyString = %@",moneyString);

        }

        return moneyString;

    }

     

     

    祝您愉快开心 ^_^

  • 相关阅读:
    MacBook下java环境的搭建
    Mac 终端下Homebrew的几个常用命令(新手笔记)
    新手学Appium_Python_Client
    【转】pycharm的一些快捷键
    解决YUM下Loaded plugins: fastestmirror Determining fastest mirrors 的问题
    chrome扩展第三方浏览器下载安装
    php异或加密解密算法的实现
    TortoiseGit客户端密钥配置
    CURL重试发送请求
    关于接收POST请求 $GLOBALS['HTTP_RAW_POST_DATA']
  • 原文地址:https://www.cnblogs.com/tianglin/p/3079852.html
Copyright © 2020-2023  润新知