2015-03-17 3 views
0

мне нужно маскировать PHONENUMBER, так что результатRegex маскировать PHONENUMBER

(***)-(***)-XXXX 

XXXX быть последние 4 цифры номера.

Сейчас мой код

String mask = phoneNumber.replaceAll("(?<=.).(?=[^-()]*?.-)", "*"); 

Результат (***) *** X-XXXX.

String mask1 = phoneNumber.replaceAll("(?:[^()-])", "*"); 

Результат

(***)-***-**** 

Я не могу знать, что ошибка, которую я делаю.

+0

На каком языке это? Также, пожалуйста, покажите свой ввод - значение 'phoneNumber'. –

+0

Вы можете получить представление об этом http://stackoverflow.com/questions/20000221/masking-of-all-digits-but-last-four –

+0

Вам нужно будет использовать [** \ G **] (http : //ideone.com/ZyYMuC). – hwnd

ответ

4
$string =~ s{([0-9]{3})([0-9]{3})([0-9]{4})}{($1)-($2)-$3}g; 

Попробуйте заменить.

Смежные вопросы