Mask a String
Mask all but the last 4 characters of a string with asterisks — like showing a saved card or account number in an app.
Sample input
1234567812345678
Sample output
************5678
Solution
s = "1234567812345678"
visible = 4
print("*" * (len(s) - visible) + s[-visible:])
const s = "1234567812345678";
const visible = 4;
console.log("*".repeat(s.length - visible) + s.slice(-visible));
public class Main {
public static void main(String[] args) {
String s = "1234567812345678";
int visible = 4;
System.out.println("*".repeat(s.length() - visible) + s.substring(s.length() - visible));
}
}
fun main() {
val s = "1234567812345678"
val visible = 4
println("*".repeat(s.length - visible) + s.takeLast(visible))
}
let s = "1234567812345678"
let visible = 4
let masked = String(repeating: "*", count: s.count - visible) + s.suffix(visible)
print(masked)
void main() {
String s = '1234567812345678';
int visible = 4;
print('*' * (s.length - visible) + s.substring(s.length - visible));
}
#include <iostream>
#include <string>
using namespace std;
int main() {
string s = "1234567812345678";
int visible = 4;
cout << string(s.size() - visible, '*') << s.substr(s.size() - visible) << endl;
return 0;
}
#include <stdio.h>
#include <string.h>
int main() {
char s[] = "1234567812345678";
int len = strlen(s);
int visible = 4;
for (int i = 0; i < len - visible; i++) putchar('*');
printf("%s\n", s + len - visible);
return 0;
}