C# 将所选文本解析为忽略字符的字符串
我选择了一个C# 将所选文本解析为忽略字符的字符串,c#,winforms,C#,Winforms,我选择了一个。text,它可以等于123t,我只想选择123并将其插入字符串中。所选的。文本也可以简单地等于54或256,但偶尔会有一个字母。我不确定要选择或解析哪个来删除该字母。当我在SE上看到类似的问题时,我试图做一些像这样复杂的事情 string cat; int dog; cat = txtFrame.Text; dog = int.Parse(cat.Substring(cat.IndexOf(""))); Frame = dog.ToStrin
。text
,它可以等于123t,我只想选择123并将其插入字符串中。所选的。文本也可以简单地等于54或256,但偶尔会有一个字母。我不确定要选择或解析哪个来删除该字母。当我在SE上看到类似的问题时,我试图做一些像这样复杂的事情
string cat;
int dog;
cat = txtFrame.Text;
dog = int.Parse(cat.Substring(cat.IndexOf("")));
Frame = dog.ToString();
Frame
是我希望它结束的字符串 这可能最好使用正则表达式
string test = "123t";
Match m = Regex.Match(test, @"\d+");
Console.WriteLine(m.Value);
若字符串中可能有一个最终符号,那个么可以使用模式的扩展形式
Regex.Match(test, @"[-+]?\d+")
从下面的帖子
Regex.Replace(s,“[^0-9.+-]”,“)
@史蒂夫的答案更好
这里有一个关于正则表达式的好资源 这只是删除所有字母字符?如果听起来很对,请解释数字是否总是连续的,或者你是否有字母混合在一起numbers@Steve数字总是第一位的,但数字的长度可以是2-3,字母的长度也可以改变,只是出于兴趣。。。你的答案是否保留+/-符号。。。不确定\d。。。可以查一下,但最好是得到专家的意见;0)否,d+仅匹配数字。Regex.Match(test,@“[-+]”?\d+”)以保留最终的signCool。我更喜欢你的答案:0)