2017-02-13 12 views
-3

У меня есть этот код и его Возможное для чтения номера с регулярным выражением (из XML-файла), но я хочу, чтобы прочитать строку буквенно-цифровой, и получить значение в качестве числового одно:Чтение буквенно-цифровой с REGEX - C#

string c1 = File.ReadAllText("C://XMLS/128839_SAG101208EJ4_10006_16_13-01-2017.xml"); 

      // i get 163.23 from the xml " subTotal="163.23" " 

      Regex rx = new Regex(@"(?<=subTotal="")[0-9]+\.[0-9]+(?="")"); 

      //Check if matches 
      var res = rx.Match(c1); 

      if (res.Success) 
      { 
       var res2 = res.ToString(); 
       MessageBox.Show(res2); 
      } 

и вот строка я хочу, чтобы получить >> UUID = «a25101f7-65e7-49be-a8de-c8d7be8ec32d» и, как вы можете видеть это также имеет «-» между буквами

Спасибо

PS: Я не хочу использовать библиотеки XML, только REGEX

+1

.net имеет встроенные функциональные возможности для работы с XML. вам не нужны какие-либо библиотеки для этого –

+0

Да, я знаю, но я не хочу использовать функции cml, просто regex –

+0

Есть ли веская причина для изобретательства колеса? Кроме того, что «я не хочу» – Andrew

ответ

0

Если вы хотите только UUID вы можете использовать этот шаблон:

[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}

+0

Не работает bro :( –

+0

См. [https://regex101.com/r/ HNO8HS/2] (https://regex101.com/r/HNO8HS/2) – Kalten

+0

yep, который работает, спасибо чувак –