Меня просят заменить символ пробела ("") в строке, но для каждой строки, которую я читаю из ввода, позиция пробела может измениться. Следующий пример:

"John Doe"
"Jay Leno"
"Michael Jordan"

Как вы можете видеть позицию пробела между изменениями имени и фамилии, я должен прочитать, в какой позиции это пробел, и заменить его символом *. Любые идеи? Я действительно не знаю, с чего начать.

Следуя другому посту, я использовал метод split () , чтобы разделить две части строки в массиве, потому что это полезно для моей задачи, но после этого я потерялся

vb6
0
Francesco Tattoli 1 Сен 2017 в 12:47

4 ответа

Лучший ответ

Давно я использовал VB6, но как насчет

Replace("John Doe", " ", "*")

Хорошо, как насчет

TRF_DIVIDE = InStr(1, "John Doe", " ", CompareMethod.Text)
2
spodger 1 Сен 2017 в 10:50

Это будет работать, если все имена имеют один пробел:

Dim l_Pos As Long
Dim l_Name As String

l_Name = "John Doe" ' Sample Name

l_Pos = Instr(l_Name, " ")   ' Get character index of first space
Mid$(l_Name, l_Pos, 1) = "*"   ' Replace space with *
0
JPBro 2 Сен 2017 в 19:27

Почему ты не можешь сделать

Dim result As String = Replace("forename surname, " ", "*")
0
Kryptonian 1 Сен 2017 в 09:54

Вы можете использовать приведенный ниже код для достижения своей цели -

FinalStringObject = oldStringObject.replace ("", "*");

Это будет работать как в Scala, так и на Java.

0
Rishav 1 Сен 2017 в 09:51