📜  c# 检测字符串是否有数字并存储它 - C# (1)

📅  最后修改于: 2023-12-03 14:59:42.951000             🧑  作者: Mango

C#检测字符串是否有数字并存储它

在C#中,有时候需要检测一个字符串中是否包含数字,如果包含数字,我们还需要将它们存储起来,本文将介绍如何实现这个功能。

方法一:使用正则表达式
using System.Text.RegularExpressions;

string myString = "abc123def";
MatchCollection matches = Regex.Matches(myString, @"\d+");
List<string> numbers = matches.Cast<Match>().Select(match => match.Value).ToList();

foreach (string number in numbers)
{
    Console.WriteLine(number);
}
  • 代码说明:使用正则表达式\d+匹配数字,并将匹配到的数字存储到一个List中。
  • 返回markdown代码片段:
```csharp
using System.Text.RegularExpressions;

string myString = "abc123def";
MatchCollection matches = Regex.Matches(myString, @"\d+");
List<string> numbers = matches.Cast<Match>().Select(match => match.Value).ToList();

foreach (string number in numbers)
{
    Console.WriteLine(number);
}

## 方法二:使用LINQ

```csharp
string myString = "abc123def";
List<char> numbers = myString.Where(char.IsDigit).ToList();

foreach (char number in numbers)
{
    Console.WriteLine(number);
}
  • 代码说明:使用LINQ的Where方法和char.IsDigit方法筛选出字符串中的数字,并将数字存储到一个List中。
  • 返回markdown代码片段:
```csharp
string myString = "abc123def";
List<char> numbers = myString.Where(char.IsDigit).ToList();

foreach (char number in numbers)
{
    Console.WriteLine(number);
}

以上就是检测字符串中是否有数字并存储它的两种方法,希望对你有所帮助!