我有很多小时在思考如何解决,这是我的功能:
private String TextAlignCenter(String Line)
{
String CenterLine = String.Empty;
if (Line.Length > 36)
{
for (int i = 0; i < Line.Length; i += 36)
{
if ((i + 36) < Line.Length)
TextAlignCenter(Line.Substring(i, 36));
else
TextAlignCenter(Line.Substring(i));
}
}
else
{
Int32 CountLineSpaces = (int)(36 - Line.Length) / 2;
for (int i = 0; i < CountLineSpaces; i++)
{
CenterLine += (Char)32;
}
CenterLine += Line;
}
Console.WriteLine(CenterLine);
return CenterLine;
}
Run Code Online (Sandbox Code Playgroud)
此函数将一个字符串拆分为36个字符的部分字符,然后将结果字符添加空格以生成居中文本:例如:
string x = "27 Calle, Col. Ciudad Nueva, …Run Code Online (Sandbox Code Playgroud) 我需要削减一些数字:
21250000.022000 -> 21250000.022
20.00 -> 20
200 -> 200
20.50 -> 20.5
Run Code Online (Sandbox Code Playgroud)
更新:
这是我尝试的:https: //regex101.com/r/Sdfe5D/1在这个正则表达式中,问题在于numnbers'200'和'20'.