Module: String::Syntax

Defined in:
lib/ruuuby/class/str/str.rb

Overview

common expressions or any sub-components needed for creating them (ex: for ‘Regular Expressions`)

Constant Summary collapse

TIME_YEAR =

expression referenced from: www.regular-expressions.info/dates.html

'(19|20)\d\d'.❄️
TIME_MONTH =

expression referenced from: www.regular-expressions.info/dates.html

'(0[1-9]|1[012])'.❄️
TIME_DAY =

expression referenced from: www.regular-expressions.info/dates.html

'(0[1-9]|[12][0-9]|3[01])'.❄️
TIME_HOUR_MIN =
'(([01]\d)|(2[0-3])):[0-5]\d'.❄️
TIME_HOUR_MIN_SEC =
"#{TIME_HOUR_MIN}:[0-5]\\d".❄️
UTC_OFFSETS =

expression referenced from: www.regextester.com/99856

'(([+-]([01]\d|2[0-3])(:?[0-5]\d)?)|Z)'.❄️
ISO8601 =
"(#{TIME_YEAR})(-#{TIME_MONTH}(-#{TIME_DAY}(T#{TIME_HOUR_MIN_SEC}(#{UTC_OFFSETS})?)?)?)?".❄️
ISO8601_NORMALIZABLE =

TODO: temporary-design, more flexibility could be added in

"(#{TIME_YEAR})(-#{TIME_MONTH}(-#{TIME_DAY}((T| )#{TIME_HOUR_MIN_SEC}(( )?#{UTC_OFFSETS})?)?)?)?".❄️
CHAR_UPPERCASE =
::Regexp::Syntax::CHAR_UPPER
CHAR_LOWERCASE =
::Regexp::Syntax::CHAR_LOWER
CASE_CAMEL =
'[A-Z]([A-Z0-9]*[a-z][a-z0-9]*[A-Z]|[a-z0-9]*[A-Z][A-Z0-9]*[a-z])[A-Za-z0-9]*'.❄️
CASE_LOWER_CAMEL =
'[a-z]+((\d)|([A-Z0-9][a-z0-9]+))*([A-Z])?'.❄️
CASE_UPPER_SNAKE =
'[A-Z]([A-Z0-9]*(_[A-Z0-9]+)?)*'.❄️
CASE_SNAKE =
'[a-z]([a-z0-9]*(_[a-z0-9]+)?)*'.❄️
LEN_3_AS_INT =
'(\d\d\d)|([+-]\d\d)'.❄️
LEN_3_AS_FLT =
'([+-]\.\d)|(\d\.\d)|(\.\d\d)|(\de\d)'.❄️
LEN_ANY_AS_INT =
'[+-]?\d+'.❄️
LEN_ANY =
'[+-]?\d+?((\.\d+e?\d*)|(e\d+))?'.❄️