2015-10-04 2 views
0

I'v искали везде и не смогли найти ответ, если я ошибаюсь, пожалуйста, как на почту, в противном случае вот мой вопрос:Заменить все символы в строке С «*» Характер

Я хочу для замены строки (например, «пароль») на все «*», но у нее все еще есть количество символов, которые имеет в ней строка, например «пароль» имеет 8 символов, поэтому он заменит это так »*** ***** "вместо пароля или любой другой строки (например," word ">" **** "," string ">" ****** ").

Если кто-нибудь может мне помочь, это было бы здорово, спасибо!

+0

Вы имеете в виду «показывать как звезды во время ввода»? Или преобразовать какой-то существующий текст, чтобы «скрыть» известный пароль? Или создать новую строку с заданным числом звезд, заданную строкой любой длины? – user2864740

+0

Уже ответили ниже, спасибо хотя :) – Melternet

ответ

3

Вы можете сделать что-то вроде этого:

Function HideString(str As String) As String 
    Return New String("*"c, str.Length) 
End Function 

Эта функция создает новую строку, используя «*» характер, но с той же длины, что и входной строки.

Вы можете использовать его как это:

Dim test As String = HideString("password") 
+0

Спасибо, работал красиво, именно то, что я искал! – Melternet

+0

Nit Picking: 'Return New String (" * "c, Trim (str) .Length)', я предлагаю вам использовать 'TRIM()', чтобы избежать конечных пробелов. –

0

Использование regex.replace() подход:

RegularExpressions.Regex.Replace("password", "[a-zA-Z]", "*") 

Вы можете создать функцию, как показано ниже

Private Function strReplace(ByVal str As String, ByVal char2replace As String) 
    Dim lstr As String = Trim(str) 
    str = RegularExpressions.Regex.Replace(lstr, "[a-zA-Z]", char2replace) 
    'or you can use 
    'str = Regex.Replace(lstr, "[a-zA-Z]", char2replace) 
    'but in this case you need to import System.Text.RegularExpressions 
    Return lstr 
End Function 

Использование:

Dim str As String = " PassWORD " 
str = strReplace(str, "*") 
'Output : ******** 
Dim str As String = "password" 
str = strReplace(str, "#") 
'Output : ########