2009-10-24 3 views

답변

24
string newString = new string('*', oldString.Length); 

,이 암호 등가물을 표시, 그것은 별표의 고정 된 수 사용하는 것이 더 좋을 수도있다 - 덜 단서 더 나은. 물론, 당신은 (소금) 암호 해시 그냥 해시를 저장하지 분명히 수 을하기 때문에 거라고, 당신이 실제 길이를 알 수없는 어쨌든

+1

훌륭한 작품입니다. 고맙습니다. – user

+1

별표가 고정 된 숫자는 암호 입력 필드에 의미가 없습니다. 사용자에게 아무런 피드백도주지 않으려는 경우 아무 것도 표시하지 않을 수도 있습니다. – Joren

0

;-p 또 다른 해결책은 다음과 같습니다

Console.Write(System.Text.RegularExpressions.Regex.Replace("test",".", "*")); 
+1

퍼포먼스의 관점에서, 이와 같은 목적으로 Regex 객체를 생성하는 것은 현명하지 못한 일입니다. 위의 문자열 메서드가 더 성능이 좋을 것입니다. – Qwerty

+0

yah, 나도 알아.하지만 질문은 어떤 성능 문제도 묻지 않았다. – daxsorbito

+1

"성능 관점에서 ... Regex 객체를 만드는 것은 현명하지 못합니다"라고 백업하십시오. 이상적인 해결책은 아니지만 "조숙 한 최적화 추측"의 나쁜 경우와 같은 냄새가납니다. –

0
var message = "hello world" ; 
var newMessage = new String('*', message.Length); 
+0

대신 message.Length를 사용하십시오. –

+0

동의, 바보 같은 오타. 고마워! – Qwerty

관련 문제