Как проанализировать текстовый файл и найти строку между двумя другими

#c# #string #parsing

#c# #строка #разбор #синтаксический анализ

Вопрос:

Например, допустим, у меня есть это:

 string test = "id:test THISISTHESTRINGIWANT id2:test"
  

И я хочу заполучить ЭТО НЕПРЕМЕННОЕ УСЛОВИЕ. Для того, чтобы сделать это, мне было интересно, возможно ли найти его следующим образом:
left_string = «id:test», right_string = «id2»

Спасибо

Комментарии:

1. хорошо, возможно, я привел неправильный пример….

2. id:tests(. ?)sid2 Это регулярное выражение может ее захватить.

3. Это одноразовое требование или существует более широкий контекст? Что на самом деле пытается сделать каждый, например, связано ли это с анализом входных данных из какого-либо источника.

Ответ №1:

Вы можете использовать .split вот так

 string test = "id:test THISISTHESTRINGIWANT id2:test"
char[] delimiterChars = { ' '};
string[] output= test.Split(delimiterChars);
  

это даст вам 3 строки {id: test,THISISTHESTRINGIWANT,id2:test}
затем вы можете выполнить итерацию по массиву строк с любым условием, которое вы хотите, чтобы отсеять ненужные данные, или вы можете изменить char массив, включив в него любые символы, которые вы хотите разделить.