Как проверить идентификатор UPI с помощью регулярного выражения?

#javascript #regex

#javascript #регулярное выражение

Вопрос:

Это похоже на идентификатор электронной почты, но также может начинаться с цифры и не имеет домена в конце.

Примеры:

 rishi.21@axis
shruti@PNB
98765__210@upi
  

Комментарии:

1. regex101.com/r/XFmIrD/1

Ответ №1:

В идеале до и после @ должно быть минимальное количество символов. Следовательно, для того же самого можно добавить следующее:

 [a-zA-Z0-9.-_]{2,256}@[a-zA-Z]{2,64}
  

Комментарии:

1. Для тех из вас, кто использует javascript, не забудьте дважды экранировать дефис: «[a-zA-Z0-9.\-_]{2,256}@[ a-zA-Z]{2,64}»

2. Зачем нам это нужно? @brunoob

Ответ №2:

Это может помочь.

 [a-zA-Z0-9\.\-]{2,256}\@[a-zA-Z][a-zA-Z]{2,64}
  

Ответ №3:

Существует два способа создания вашего UPI (унифицированного платежного интерфейса) Идентификатор, то есть VPA (виртуальный платежный адрес) 1 — С использованием номера телефона (используйте PayTm, Phone Pay и т.д.) 2 -С использованием идентификатора электронной почты (используйте Google Pay) Поэтому для проверки действительного UPI VPA нам нужно использовать регулярное выражение email / phone number @ bankname / paymentgateway

 ^[w.-_]{3,}@[a-zA-Z]{3,}
  

Ответ №4:

Предполагая, что до или после @ символа могут отображаться только символы word, мы можем попробовать использовать следующий шаблон:

 ^[w.-] @[w.-] $
  

 var result = /^[w.-] @[w.-] $/.test('rishi21@axis');
console.log(result);
var result = /^[w.-] @[w.-] $/.test('shruti@PNB');
console.log(result);
var result = /^[w.-] @[w.-] $/.test('98765__210@upi');
console.log(result);
var result = /^[w.-] @[w.-] $/.test('#stuff@other$');
console.log(result);  

Комментарии:

1. сэр, в приведенном выше ответе a @ a также верно, но после прочтения документации upi я узнаю, что требуется, по крайней мере, email / phone @ bankname / provider, и оба должны содержать не менее 3 символов до @ 3 символа после обязательно

2. Идентификатор UPI также может содержать точку (.) и приведенное выше регулярное выражение не будет совпадать с идентификатором upi с точкой

3. Идентификатор UPI также содержит - дефис

Ответ №5:

 var str = "rishi21@axis";
var str2 = "92@in";
var match = /[a-zA-Z0-9_]{3,}@[a-zA-Z]{3,}/;
console.log(match.test(str)); // True
console.log(match.test(str2)); // False
  

Регулярное выражение в match будет искать 3 символа в строке, которые являются буквами, цифрами или подчеркиванием, затем знак @, затем 3 буквы. Еще несколько вариантов:

 1.) /[a-zA-Z0-9_- ]{3,}@[a-zA-Z]{3,}/ 
// Searches first part for hyphens and plus signs too
2.) /[a-zA-Z0-9_]{3,}@[a-zA-Z0-9]{3,}/
// Includes numbers in matches after the @ sign
3.) /[a-zA-Z0-9_]{5,}@[a-zA-Z]{3,}/
// Requires 5 or more matching characters before the @ sign
  

Ответ №6:

Исключенный ответ не проверяет все условия.

Идентификатор VPA или UPI может содержать буквенно-цифровой символ, точку (.), дефис (-), подчеркивание () и знак at (@). Подчеркивание () и точка (.) принимаются до и после знака at (@), но дефис (-) принимается только перед знаком at (@)

 [a-zA-Z0-9.-_]{2,49}@[a-zA-Z._]{2,49}
  

Это выражение будет проверять наличие минимальных символов, буквенно-цифровых символов, точки, дефиса и подчеркивания.

Ответ №7:

 ^[a-zA-Z0-9.-_]{2,49}@[a-zA-Z._]{2,49}$
  

это обеспечит точное совпадение.
если вы хотите получить больше информации об этом регулярном выражении, дайте мне знать в комментариях.

Комментарии:

1. regexr.com попробуйте использовать вышеупомянутое регулярное выражение на этом веб-сайте.

Ответ №8:

Вы можете поддерживать [точку] также в адресе upi, используя приведенное ниже регулярное выражение.

 /^w. @w $/.test('rishi.21@axis')

/^w. @w $/.test('shruti@PNB')

/^w. @w $/.test('98765__210@upi')
  

Ответ №9:

Как отобразить формат идентификатора UPI (sxxxxxx @upi) с помощью регулярного выражения

 const upiAddress = 'success@upi';
upiAddress.replace(/(?<=.).(?=[^@]*?@)/g, "x");
output : sxxxxxx@xyz