我想在字符串中的数字中添加一定数量的前导零.例如:
输入:"第1页",输出:"第001页"输入:"第12页",输出:"第012页"输入:"第123页",输出:"第123页"
使用Regex.Replace做到这一点的最佳方法是什么?
此刻我用这个但结果是001,0012,00123.
string sInput = "page 1";
sInput = Regex.Replace(sInput,@"\d+",@"00$&");
Run Code Online (Sandbox Code Playgroud)
Sve*_*ven 12
正则表达式替换表达式不能用于此目的.但是,Regex.Replace
有一个过载需要委托,允许您为替换进行自定义处理.在这种情况下,我正在搜索所有数值并将其替换为填充为三个字符长度的相同值.
string input = "Page 1";
string result = Regex.Replace(input, @"\d+", m => m.Value.PadLeft(3, '0'));
Run Code Online (Sandbox Code Playgroud)
在旁注中,我不建议在C#代码中使用匈牙利语前缀.它们没有提供真正的优势和.Net的常见风格指南建议不要使用它们.
归档时间: |
|
查看次数: |
4591 次 |
最近记录: |