Jak zrobić takie przekształcenie na stringu

Jak zrobić takie przekształcenie na stringu
K7
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 98
0

Witam, jak zrobić takie przeksztalcenie na stringu?

Mam np

Kopiuj
string tekst="Kamil";

i chcę aby została wypisana tylko pierwsza i ostatnia litera, a reszta zamieniona na * czyli:
"K***l"
wiem że w c++ jest replace. W c# próbowałem replace, ale nie ma przeciążenia które by to załatwiło

KR
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 2520
1

@kamilm758 spróbuj tak:

Kopiuj
System.Text.RegularExpressions.Regex.Replace(tekst, "(?<!^).(?!$)", "*")

pozostawiam do samodzielnej analizy

kzkzg
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 939
1
Kopiuj
var s = "kamil";
string s2 = s[0].ToString();
for (int i = 0; i < s.Length - 2; i++) s2 += "*";
s2 += s[s.Length - 1].ToString();
neves
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Kraków
  • Postów: 1114
3

Zakładając że ciąg ma minimum 2 znaki, najprościej i pewnie najszybciej to zrobić w ten sposób:

Kopiuj
string result = tekst.First() + new String('*', tekst.Length-2) + tekst.Last();

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.