我知道如果它之间没有空格
,如何删除前导0var strVal = "000001234";
strVal.TrimStart('0');
将给出结果“1234”。 但我不知道如何处理
var strVal ="0000 00001234";
我试过了:
strVal.Trim().TrimStart('0');
但它返回“00001234”。 谁能请帮忙。
答案 0 :(得分:5)
当您致电TrimStart
时,您可以指定从字符串的开头删除多个字符,这样您就可以只包含空格字符:
"00 00123".TrimStart(' ', '0');
答案 1 :(得分:2)
Trim
无法正常工作,因为它:
从当前String对象中删除所有前导和尾随空白字符。
它不会删除任何内容"内部"字符串。
作为Rufus L的解决方案的替代方案,这里有一个正则表达式的解决方案:
using System.Text.RegularExpressions;
// ...
Console.WriteLine(Regex.Replace(strVal, "^[0\\s]+", ""));
说明:
^
:字符串的开头[]
:匹配括号内的任何内容\\s
:匹配任何空格+
重复一次或多次答案 2 :(得分:-1)