2015-09-20 1 views
-1

У меня есть эта проблема на C# .. Я пытаюсь сделать панель управления для серверов Minecraft. У меня есть консольный выход и все эти вещи в панели управления, и он работает. Теперь у меня есть окно онлайн-игрока, но код позади него не работает. Я пытаюсь проверить что-то вроде этого: [11:49:43 INFO]: JonasC [/127.0.0.1:51292] вошел в , но затем с Regex и хотели бы иметь время в начале и имя и IP-адрес должен быть переменным .. у меня есть этот код прямо сейчас, но он не работает ..C# Regex Check для панели управления

#region Test for join 
try 
{ 
    Regex TestRegex = new Regex(@"[0-9\-]{10}\ ([0-9:]{8})\ \[INFO\]\ ([^\ ]*)\ [^\]]*\]\ (logged\ in)"); 
    if (TestRegex.IsMatch(AText)) 
    { 
     MessageLogAddition = ""; 

     string[] Matches = TestRegex.Split(AText); 
     MessageLogAddition += Matches[1] + " "; 
     MessageLogAddition += Matches[2] + " "; 
     MessageLogAddition += "joined."; 

     ConnectedPlayersListBox.Items.Add(Matches[2].Trim()); 

     if (!AllPlayersListBox.Items.Contains(Matches[2].Trim())) 
     { 
      AllPlayersListBox.Items.Add(Matches[2].Trim()); 
     } 
    } 
} 
catch 
{ 
} 
#endregion 

Вся помощь приветствуется! Эта панель с открытым исходным кодом. Код находится по адресу: http://coded.ddns.info/dl/MCSC_Source.zip

ответ

-1

Что об этом:

var TestRegex = new Regex(@"\[(?<time>.+) INFO]: (?<name>.+)\[(?<ip>.+)\] logged in"); 

Вы можете также ссылаться на то названные группы, как это:

var match = reg.Match(AText); 
var timeJoined = match.Groups["time"]; 
var userName = match.Groups["name"]; 
var ip = match.Groups["ip"]; 
+0

Спасибо, это сработало из хорошо для меня! Большое спасибо Вам!!! –

 Смежные вопросы

  • Нет связанных вопросов^_^