Изменение всех тех же строк с помощью пользовательского ввода

Делаю создатель файла реестра для игры The Sims 3, так как изначально он на русском языке.

Что я хотел бы сделать, так это изменить все относительные параметры на то, что выбирает пользователь.

reg-файл содержит несколько строк "RU", одинаковые для "ru-RU" и пути выполнения (C:\ Пользователи\Lollo\Desktop\Nuova cartella\The Sims 3.Gold Edition.v 21.0.150 + Store\).

Это код, который я использую для замены строк:

Dim replacetext As String = TextBox1.Text

If RichTextBox1.SelectedText.Length <= 0 Then

    Exit Sub

End If

Dim s As String = "RU"

Dim nextPos As Integer

nextPos = RichTextBox1.Text.IndexOf(RichTextBox1.SelectedText)

While ((nextPos < RichTextBox1.Text.Length) And (nextPos >= 0))

    RichTextBox1.SelectionStart = nextPos

    RichTextBox1.SelectionLength = s.Length

    RichTextBox1.Text = RichTextBox1.Text.Replace(s, replacetext)

    nextPos = RichTextBox1.Text.IndexOf(s, nextPos + 1)

End While

Однако это не работает.

Вот как мой графический интерфейс представлен пользователю:

GUI

Может ли кто-нибудь посоветовать, что я делаю неправильно?


person Vanilla Rainbow    schedule 27.03.2017    source источник


Ответы (1)


Вместо того, чтобы делать это так, как вы к этому подходите, я бы предпочел использовать string.replace и заменить его вашими значениями.

Это будет выглядеть примерно так:

TextBox1.Text = Textbox1.Text
.Replace("ru-RU",ComboBox2.Text)
.Replace("RU",ComboBox3.Text)

У меня нет всех деталей, поэтому сделать это полностью сложно, но то, как вы, кажется, хотите, может быть немного затянутым.

Другое предложение - просто использовать Regex и заменить его таким образом.

Редактировать:

Игнорирование случая, немного более рискованно.

TextBox1.Text = Textbox1.Text
.ToLower()
.Replace("ru-ru",ComboBox2.Text)
.Replace("ru",ComboBox3.Text)
person Sasha    schedule 27.03.2017
comment
хорошо, я использовал этот код: pastebin.com/aPHtK2vy У меня проблема с ru-RU , он меняет только прописные буквы, а не строчные, какие-нибудь советы? - person Vanilla Rainbow; 27.03.2017
comment
РЕДАКТИРОВАТЬ: Только что пересмотрел фрагмент, пожалуйста, сначала замените ru-RU, а затем замените RU. Спасибо - person Sasha; 27.03.2017
comment
работал как оберег. Теперь, если я хочу экспортировать весь отредактированный код в текстовый файл? любая помощь? - person Vanilla Rainbow; 27.03.2017
comment
@VanillaRainbow здесь это не работает. Примите это как ответ (отметьте слева) и займитесь экспортом в текстовый файл. На SO есть множество примеров, и вы также можете использовать Google. - person Bugs; 27.03.2017
comment
Как говорит @Bugs, сначала осмотритесь на SO, и если вы все еще не можете понять это, покажите нам, что вы пробовали, и кто-нибудь поможет вам, но если бы я продолжал связывать ответы, это могло бы сбить с толку кого-то, кто придет с похожим вопрос. - person Sasha; 27.03.2017
comment
Привет @VanillaRainbow, если этот или любой другой ответ решил ваш вопрос, рассмотрите возможность принятия его, нажав на галочку. Это показывает более широкому сообществу, что вы нашли решение, и повышает репутацию как отвечающего, так и вас самих. - person Sasha; 27.04.2017