Size: a a a

JavaScript — русскоговорящее сообщество

2020 July 06

S

Special K in JavaScript — русскоговорящее сообщество
/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-||_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+([a-z]+|\d|-|\.{0,1}|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])?([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))$/i
источник

S

Special K in JavaScript — русскоговорящее сообщество
Только такая регулярка, возможно, покрывает все кейсы e-mail
источник

MK

Maks Kukarin in JavaScript — русскоговорящее сообщество
Nektamu Fox
Кто знает, почему одна и та же регулярка в Chrome и Firefox ведут себя по разному?
В Chrome ругаеться, если есть пробел, а в Firefox на пробел не ругается.

       const regExp = /^(([^<$>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/
Движки разные
источник

MK

Maks Kukarin in JavaScript — русскоговорящее сообщество
Расчета регулярок
источник

ИЗ

Игорь Завирюха... in JavaScript — русскоговорящее сообщество
Nektamu Fox
Кто знает, почему одна и та же регулярка в Chrome и Firefox ведут себя по разному?
В Chrome ругаеться, если есть пробел, а в Firefox на пробел не ругается.

       const regExp = /^(([^<$>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/
ну возможно из-за внутренней реализации type="email" там же тоже валидирует
источник

NF

Nektamu Fox in JavaScript — русскоговорящее сообщество
Special K
/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-||_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+([a-z]+|\d|-|\.{0,1}|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])?([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))$/i
тоже в хроме пробел хавает в начале или в конце
источник

NF

Nektamu Fox in JavaScript — русскоговорящее сообщество
там нюанс в том, что это кастомная валидация и input type никак не влияет на нее
источник

V

Vlad in JavaScript — русскоговорящее сообщество
Nektamu Fox
тоже в хроме пробел хавает в начале или в конце
.trim()
источник

ИЗ

Игорь Завирюха... in JavaScript — русскоговорящее сообщество
так ..
источник

ИЗ

Игорь Завирюха... in JavaScript — русскоговорящее сообщество
да
источник

ИЗ

Игорь Завирюха... in JavaScript — русскоговорящее сообщество
😄😄
источник

ИЗ

Игорь Завирюха... in JavaScript — русскоговорящее сообщество
обрезай просто
источник

NF

Nektamu Fox in JavaScript — русскоговорящее сообщество
таки хорошая идея
источник

АБ

Артём Бондаренко... in JavaScript — русскоговорящее сообщество
Всем день добрый. Такой вопрос. Как можно понять что внутри инпута выделен текст?
источник

EY

Eugene Yemelin in JavaScript — русскоговорящее сообщество
selectionEnd
источник

АБ

Артём Бондаренко... in JavaScript — русскоговорящее сообщество
Всегда null почему-то
источник

АБ

Артём Бондаренко... in JavaScript — русскоговорящее сообщество
Вот код на вьюшке, но по идеи поведение-то нативное должно быть:
//....
<input type="number" v-model="count" @select="select"/>
//....

   select(e){
     console.log(e.target.selectionEnd);
   },
источник

АБ

Артём Бондаренко... in JavaScript — русскоговорящее сообщество
Догуглился если что. selectionEnd не работает с  type="number". Походу придется менять на текст и докидывать валидаци :(
источник

u

undefined in JavaScript — русскоговорящее сообщество
Special K
/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-||_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+([a-z]+|\d|-|\.{0,1}|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])?([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))$/i
а зачем? Почему просто не /^.+@.+\..+$/ с максимальной длиной в 255 символов ?
Ты всяко-разно на эту почту потом отправишь подтверждение. Не дошло письмо - невалидная почта
источник

S

Special K in JavaScript — русскоговорящее сообщество
undefined
а зачем? Почему просто не /^.+@.+\..+$/ с максимальной длиной в 255 символов ?
Ты всяко-разно на эту почту потом отправишь подтверждение. Не дошло письмо - невалидная почта
Можно напрячь сервер, заставив его пытаться отправить миллион писем на адреса, которых даже существовать не может
источник