Ruby Regexps
10 февраля 2009, ВторникО регулярных выражениях в руби можно говорить долго и много. Применяются они как и в других скриптовых языках часто.
Для создания и проверки регулярных выражений существует замечательный ресурс Рубулар.
Список самых популярных регулярных выражений:
- Валидация почты:
/^([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})$/i
- Валидация URL сайта
/(^$)|(^(http|https):\/\/[a-z0-9]+([\-\.]{1}[a-z0-9]+)*\.[a-z]{2,5}(([0-9]{1,5})?\/.*)?$)/
- Валидация кредиток:
# Почти всех
'^(?:4[0-9]{12}(?:[0-9]{3})?|5[1-5][0-9]{14}|6011[0-9]{12}|3(?:0[0-5]|[68][0-9])[0-9]{11}|3[47][0-9]{13})$'
# American Express
'^3[47][0-9]{13}$'
# Diners Club
'^3(?:0[0-5]|[68][0-9])[0-9]{11}$'
# Discover
'^6011[0-9]{12}$'
# MasterCard
'^5[1-5][0-9]{14}$'
# Visa
'^4[0-9]{12}(?:[0-9]{3})?$'
# Чистка не цифр
'/[^0-9]+/'
- Проверка номера телефона:
#1
/^(8-(0\d{2})-(\d{3})-(\d{2})-(\d{2}))$/
#2
/^(38(0\d{9}))$/
- IP адресса:
#1
'\b([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})\b'
#2
/(?:[0-9]{1,3}\.){3}[0-9]{1,3}/
#3
'\b(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b'
#4
'\b(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b'
В целом интернет изобилует разными регулярнимы выражениями, которые вы легко сможете использовать.
