Heim  >  Artikel  >  Backend-Entwicklung  >  Wie erkennt man, welche Zahlen in einer Zeichenfolge in C# enthalten sind?

Wie erkennt man, welche Zahlen in einer Zeichenfolge in C# enthalten sind?

黄舟
黄舟Original
2017-02-20 11:19:241404Durchsuche

Wie erkennt man, welche Zahlen in einer Zeichenfolge in C# enthalten sind?

  //测试函数
        private void Form1_Load(object sender, EventArgs e)
        {
            foreach (var number in ExtractNumbersFromString("abc2345 345fdf678 jdhfg945"))
            {
                MessageBox.Show(number.ToString());
            }
        }

        private IEnumerable<int> ExtractNumbersFromString(string s)
        {
            //Regex.Matches 方法:在输入字符串中搜索正则表达式的所有匹配项并返回所有匹配。
            //一次或多次匹配前面的字符或子表达式。等效于 {1,}。如果将+去掉,就是
            //return Regex.Matches(s, @"\d+").Cast<Match>().Select(m => Convert.ToInt32(m.Value));
            return Regex.Matches(s, @"\d").Cast<Match>().Select(m => Convert.ToInt32(m.Value));
        }

"abc2345 345fdf678 jdhfg945"
Wenn im obigen Beispieltest ein Pluszeichen vorhanden ist, sieht die Ausgabe wie folgt aus:

2345  
345
678
945

Wenn es kein + gibt, wird die Ausgabe wie folgt ausgegeben:

2
3
4
5
3
.......

Wie erkennt C# oben, welche Zahlen sich in einer Zeichenfolge befinden? Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (www.php.cn)!


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn