Обновлено:
Похоже, этот метод вызывается каждый раз, когда вызывается новый ключ, однако вы обновляете локальную переменную с именем xxx
.
Каждый раз, когда этометод вызывается, вы всегда начинаете с пустой строки.Самое большее, xxx
будет иметь 1 символ.
Вам нужно будет сохранить значение xxx
вне области действия функции.
Не рекомендуется (потому что вы хотите избежать static
переменные для этого типа вещей), но вы можете ввести новую переменную:
private static string InputFields = "";
и использовать, например, InputFields += ".";
.
Также обратите внимание, что xxx.Replace(...)
на самом деле несделайте что-нибудь здесь, потому что вы не назначаете результат этого метода ни для чего.Вы можете полностью удалить его.
Согласно комментарию @ CinCout, можете ли вы проверить значение xxx
?
Я пробовал приведенный выше пример, и он должен работать сtest
вход:
using System;
using System.Text.RegularExpressions;
public class Program
{
public static void Main()
{
var test = "2.3 4.5 6.7";
var regex = new Regex(@"\d+\.\d+");
var matches = regex.Matches(test);
foreach (var match in matches)
{
Console.WriteLine(match);
}
}
}
Демо