C#中利用正则表达式将人民币金额转换为大写汉字

 更新时间:2016年02月23日 17:38:20   作者:无机战士  
这篇文章主要介绍了C#中利用正则表达式将人民币金额转换为大写汉字的方法,需要的朋友可以参考下

直接来看代码:

public static string ConvertToChineseMoney(double money) 
  { 
    if (money < 0) 
      throw new ArgumentOutOfRangeException("参数money不能为负值!"); 
    string s = money.ToString("#L#E#D#C#K#E#D#C#J#E#D#C#I#E#D#C#H#E#D#C#G#E#D#C#F#E#D#C#.0B0A"); 
    s = Regex.Replace(s, @"((?<=-|^)[^1-9]*)|((?'z'0)[0A-E]*((?=[1-9])|(?'-z'(?=[F-L\.]|$))))|((?'b'[F-L])(?'z'0)[0A-L]*((?=[1-9])|(?'-z'(?=[\.]|$))))", "${b}${z}"); 
    return Regex.Replace(s, ".", delegate(Match m) { return "负元空零壹贰叁肆伍陆柒捌玖空空空空空空空分角拾佰仟萬億兆京垓秭穰"[m.Value[0] - '-'].ToString(); }); 
  } 

调用该方法:

Random r = new Random(); 
for (int i = 0; i < 10; i++) 
{ 
  double m = r.Next() / 100.0; 
  Response.Write(m + "---- " + ConvertToChineseMoney(m) + "<br/>"); 
} 

来测试一下,结果就像下面一样:

5970370.36---- 伍佰玖拾柒萬零叁佰柒拾元叁角陆分

6521548.6---- 陆佰伍拾贰萬壹仟伍佰肆拾捌元陆角

12179380.35---- 壹仟贰佰壹拾柒萬玖仟叁佰捌拾元叁角伍分

15742735.47---- 壹仟伍佰柒拾肆萬贰仟柒佰叁拾伍元肆角柒分

9236554.09---- 玖佰贰拾叁萬陆仟伍佰伍拾肆元零玖分

9706980.49---- 玖佰柒拾萬陆仟玖佰捌拾元肆角玖分

11873034.16---- 壹仟壹佰捌拾柒萬叁仟零叁拾肆元壹角陆分

21141596.22---- 贰仟壹佰壹拾肆萬壹仟伍佰玖拾陆元贰角贰分

17040243.44---- 壹仟柒佰零肆萬零贰佰肆拾叁元肆角肆分

5358585.54---- 伍佰叁拾伍萬捌仟伍佰捌拾伍元伍角肆分

您可能感兴趣的文章:

相关文章

  • Android ListView列表控件的介绍和性能优化

    Android ListView列表控件的介绍和性能优化

    这篇文章主要介绍了Android ListView列表控件的介绍和性能优化,需要的朋友可以参考下
    2017-06-06
  • Android开发入门之Appwidget用法分析

    Android开发入门之Appwidget用法分析

    这篇文章主要介绍了Android开发入门之Appwidget用法,较为详细的分析了App Widget的概念、功能、创建、使用方法与相关注意事项,需要的朋友可以参考下
    2016-07-07
  • Android获取、更改包名的小技巧分享(超实用)

    Android获取、更改包名的小技巧分享(超实用)

    这篇文章主要给大家分享介绍了关于利用Android更改包名的一个小技巧,通过这个方法大家可以很方便的修改包名,再也不用为频繁修改包名而感到头疼,文中还给大家分享利一个android获取手机所有应用包名的方法,下面随着小编来一起学习学习吧。
    2017-12-12
  • Android 实例开发基于ArcSoft实现人脸识别

    Android 实例开发基于ArcSoft实现人脸识别

    人脸识别,是基于人的脸部特征信息进行身份识别的一种生物识别技术。用摄像机或摄像头采集含有人脸的图像或视频流,并自动在图像中检测和跟踪人脸,进而对检测到的人脸进行识别的一系列相关技术,通常也叫做人像识别、面部识别
    2021-11-11
  • android长截屏原理及实现代码

    android长截屏原理及实现代码

    本篇文章主要介绍了android长截屏原理及实现代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-08-08
  • Android支付宝支付设计开发

    Android支付宝支付设计开发

    这篇文章主要为大家详细介绍了Android支付宝支付设计开发,设计支付宝支付开发方案,感兴趣的小伙伴们可以参考一下
    2016-02-02
  • PagerSlidingTabStrip制作Android带标签的多界面滑动切换

    PagerSlidingTabStrip制作Android带标签的多界面滑动切换

    这篇文章主要介绍了使用PagerSlidingTabStrip制作Android带标签的多界面滑动切换效果的方法,PagerSlidingTabStrip是GitHub上的一个开源项目,调用这个库可以少写不少代码XD 需要的朋友可以参考下
    2016-04-04
  • Bitmap海量数据快速查找去重代码示例

    Bitmap海量数据快速查找去重代码示例

    这篇文章主要介绍了Bitmap海量数据快速查找去重代码示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-12-12
  • Android用PopupWindow实现自定义Dailog

    Android用PopupWindow实现自定义Dailog

    这篇文章主要为大家详细介绍了Android用PopupWindow实现自定义Dailog的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-01-01
  • Kotlin的Collection与Sequence操作异同点详解

    Kotlin的Collection与Sequence操作异同点详解

    这篇文章主要介绍了Kotlin的Collection与Sequence操作异同点详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-10-10

最新评论