C# 人民币大小写转换正则表达式

C# 人民币大小写转换正则表达式 - leestar54的专栏 - 博客频道 - CSDN.NET

  1. using System.Text.RegularExpressions;   
  2.   
  3.     
  4.   
  5. string s = (12345678901234567890.123456789).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");  
  6.   
  7.         string d = 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}");  
  8.   
  9.         string str =  Regex.Replace(d, "."delegate(Match m) { return "负元空零壹贰叁肆伍陆柒捌玖空空空空空空空分角拾佰仟萬億兆京垓秭穰"[m.Value[0] - '-'].ToString(); });  
using System.Text.RegularExpressions;   string s = (12345678901234567890.123456789).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");        string d = 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}");        string str =  Regex.Replace(d, ".", delegate(Match m) { return "负元空零壹贰叁肆伍陆柒捌玖空空空空空空空分角拾佰仟萬億兆京垓秭穰"[m.Value[0] - '-'].ToString(); });

以前看的一些算法好长啊,正则表达式就这几句,很好用。网上转载的,碉堡了!



原文地址:https://www.cnblogs.com/leestar54/p/3013287.html