Поиск строки для определенных символов и встраивание ее в код

#c# #string

#c# #строка

Вопрос:

Мой предыдущий вопрос был закрыт, потому что было упомянуто, что аналогичный вопрос уже был задан и на него был дан ответ. Я пытался найти что-то подобное, но не могу, поэтому постараюсь рассказать подробнее.

У меня есть файл, который я читаю построчно. В каждой строке я ищу конкретную фразу: "see {number}." или "See {number}."

Например:

 see 112.
See 4.
etc.
 

Проблема здесь в том, что я не могу использовать эту конкретную фразу, потому что мне нужно найти разные строки, которые, как я просто знаю, начинаются с «see», за которым следует любое «число», заканчивающееся точкой.
Сначала я подумал, что было бы лучше использовать какое-то регулярное выражение. Но я немного беспокоюсь о производительности.

В любом случае, после того, как я установлю, что мне нужно встроить это в код. Добавление определенного тега до и после строки. Так, например, когда я нашел «см. 112». я хочу заменить его, <link={found_number}>see 112.</link> например, на: <link=112>see 112.</link>

Я был бы благодарен за любые предложения, как этого добиться.

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

1. Это кажется идеальным для регулярного выражения и для чего-либо меньшего, чем очень большие объемы текста, я бы не ожидал каких-либо проблем с производительностью — вы проверили, что такие проблемы есть?

2. Проблема в том, что я не могу понять синтаксис для всего документа. С одной записью проблем нет, но когда я предполагаю, что таких записей может быть около ~ 100, я не уверен, как определить их все, извлечь из них найденное значение, а затем заменить его.

3. Существует Replace() метод, который сделает все это: string result = Regex.Replace(input_text, @"b(see) (d )", @"<link=$2>$1 $2.</link>", RegexOptions.IgnoreCase);

4. Пожалуйста, покажите, что у вас есть на данный момент, чтобы мы могли видеть, где это не работает. Где находится код, который считывает файл? Как вы в настоящее время анализируете строки? Вы можете использовать IndexOf() , чтобы получить индекс слова "see" и снова найти . . Затем вы можете попытаться разобрать текст между ними в целое число, используя int.TryParse . Но если вы не покажете нам, что у вас есть, мы не сможем понять, что не так.

5. @AlexK. спасибо, это то, что я искал. Вы должны отправить в качестве ответа.