Проблема с маскировкой AccountNumber и CreditCardNo в свободном текстовом поле [дубликат]C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Проблема с маскировкой AccountNumber и CreditCardNo в свободном текстовом поле [дубликат]

Сообщение Anonymous »

Пожалуйста, откройте вопрос повторно, поскольку сценарии, упомянутые ниже, отличаются от сценариев, описанных в связанном вопросе. Я жду ответа от @bobble.
У меня возникла проблема с маскировкой приведенных ниже строк. Для номера счета должны отображаться последние 4 цифры, если он находится в диапазоне от 8 до 9, а для номера кредитной карты должны отображаться последние 4 цифры, если он находится в диапазоне 12–19. Ниже приведен формат (ввод, вывод):
("Biller code 3038 - Receipt No 3514616375 221414441406","Biller code 3038 - Receipt No 3514616375 xxxxxxxx1406"); //CCNo should get masked
("Biller code 3038 - Receipt No 351461637 221414441406","Biller code 3038 - Receipt No xxxxx1637 xxxxxxxx1406"); //Both AccNo and CCNo should get masked
("Biller code 3038 - Receipt No 35146 221414441406","Biller code 3038 - Receipt No 35146 xxxxxxxx1406"); //CCNo should get masked
("Biller code 3038 - Receipt No 221414441406 3514616375","Biller code 3038 - Receipt No xxxxxxxx1406 3514616375"); CCNo should get masked
("Biller code 3038 - Receipt No 221414441406 351461637","Biller code 3038 - Receipt No xxxxxxxx1406 xxxxx1637"); //Both AccNo and CCNo should get masked
("Biller code 3038 - Receipt No 22141444140 351461637","Biller code 3038 - Receipt No 22141444140 xxxxx1637"); //AccNo should get masked
("Biller code 3038 - Receipt No 22141444140 3514616375","Biller code 3038 - Receipt No 22141444140 3514616375"); //Both should not get masked

Я попробовал приведенное ниже регулярное выражение, и оно работает для всех сценариев в демо-версии. Но для рассматриваемых сценариев это не работает. Ожидается, что все сценарии в демоверсии, а также рассматриваемый сценарий должны работать вместе.
public static string MaskIfContainCreditCardPanorAcctNumNew(this string value)
{
if (string.IsNullOrEmpty(value))
return value;

var maskedAccountNumber = value.MaskAccNo();

return maskedAccountNumber.MaskCCNo();
}
public static string MaskCCNo(this string value)
{
var a = Regex.Replace(value, @"(?:\G(?!^)|(?

Подробнее здесь: https://stackoverflow.com/questions/787 ... text-field
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»