Module: StTools::Module::String

Defined in:
lib/modules/string.rb

Instance Method Summary collapse

Instance Method Details

#capsString

Метод делает строку downcase но каждую букву каждого слова - заглавной

Examples:

Капитализация первых букв строки

"саН-франЦИСКО".caps #=> "Сан-Франциско"


89
90
91
# File 'lib/modules/string.rb', line 89

def caps
  ::StTools::String.caps(self)
end

#delatString

Метод заменяет случайно набранные английские символы (с, р, y) в соответствующие по написанию русские



15
16
17
# File 'lib/modules/string.rb', line 15

def delat
  ::StTools::String.delat(self)
end

#downcaseString

Метод переводит русскую и английскую строку в нижний регистр без использования MultiByte (только UTF-8)

Examples:

Перевод строки в нижний регистр

"Владимир".upcase #=> "владимир"


25
26
27
# File 'lib/modules/string.rb', line 25

def downcase
  ::StTools::String.downcase(self)
end

#hideString

Метод заменяет часть символов строки на звездочки

Examples:

Сокрытие части строки

"Владимир".hide #=> "Вл*ди*ир"


53
54
55
# File 'lib/modules/string.rb', line 53

def hide
  ::StTools::String.hide(self)
end

#normalizeString

Метод удаляет пробелы в начале и конце строки, проводит #delat, #downcase

Examples:

Нормализация строки

"   Владимир".normalize #=> "владимир"


44
45
46
# File 'lib/modules/string.rb', line 44

def normalize
  ::StTools::String.normalize(self)
end

#prune(length, words: false, endwith: '...') ⇒ String

Метод обрезает строку и добавляет в случае обрезнаия многоточие

Examples:

Обрезание строки

"1234567890".prune(20)                  #=> "1234567890"
"1234567890".prune(8)                   #=> "12345..."
"1234567890".prune(8, endwidth: '---')  #=> "12345---"
"Привет мир!".prune(12)                 #=> "Привет ми..."
"Привет мир!".prune(12, words: true)    #=> "Привет..."


102
103
104
# File 'lib/modules/string.rb', line 102

def prune(length, words: false, endwith: '...')
  ::StTools::String.prune(self, length, words, endwith)
end

#st_split(separator, opts = {}) ⇒ Array

Метод разделяет строку на подстроки, и нормализует кажду подстроку через #normalize

Examples:

Преобразование строки в массив чисел

"Москва , Питер , Владимир".split(",") #=> ['москва', 'питер', 'владимир']

Options Hash (opts):

  • :sort (Boolean)
    • сортировать результирующий массив

  • :uniq (Boolean)
    • удалить из результирующего массива дубликаты



66
67
68
# File 'lib/modules/string.rb', line 66

def st_split(separator, opts = {})
  ::StTools::String.split(self, separator, opts)
end

#to_boolBoolean

Метод переводит строку в значение boolean (true или false). True - если строка имеет одно из трех значений:

‘true’, ‘on’, ‘1’

Examples:

проверка, что строка - true

"True".to_bool #=> true


132
133
134
# File 'lib/modules/string.rb', line 132

def to_bool
  ::StTools::String.to_bool(self)
end

#to_float(round: 6, stop: true) ⇒ Float

Метод преобразует строковое выражение в число с плавающей запятой. При этом метод корректно преобразует числа вида “12.34” и “12,34”, то есть с точкой и запятой (но будет некорректный результат в случае американских чисел, где запятая - разделитель тысяч, а не дробная часть).

Examples:

Примеры использования

'123.45678'.to_float                                 #=> 123.45678
'123.474565'.to_float(round: 2)                      #=> 123.47
'123,474565'.to_float(round: 2)                      #=> 123.47
'   123,47456564'.to_float(round: 2)                 #=> 123.47
'   10 123,47456'.to_float(round: 2)                 #=> 10123.47
' -  10 123,474565'.to_float(round: 2)               #=> -10123.47
nil.to_float(round: 2) rescue 'fail'                 #=> "fail"
nil.to_float(round: 2, stop: false) rescue 'fail'    #=> 0


122
123
124
# File 'lib/modules/string.rb', line 122

def to_float(round: 6, stop: true)
  ::StTools::String.to_float(self, round, stop)
end

#to_range(opts = {}) ⇒ Array

Метод переводит введенные человеком цифры, перечисленные через запятую и тире в массив чисел

Examples:

Преобразование строки в массив чисел

"6, 3, 8-10, 1".to_range #=> [6, 3, 8, 9, 10, 1]
"6, 3, 8-10".to_range(sort: true) #=> [1, 3, 6, 8, 9, 10]

Options Hash (opts):

  • :sort (Boolean)
    • сортировать результирующий массив

  • :uniq (Boolean)
    • удалить из результирующего массива дубликаты



80
81
82
# File 'lib/modules/string.rb', line 80

def to_range(opts = {})
  ::StTools::String.to_range(self, opts)
end

#translitString

Метод проводит транслитерацию русского текста



8
9
10
# File 'lib/modules/string.rb', line 8

def translit
  ::StTools::String.translit(self)
end

#upcaseString

Метод переводит русскую и английскую строку в верхний регистр без использования MultiByte (только UTF-8)

Examples:

Перевод строки в верхний регистр

"Владимир".upcase #=> "ВЛАДИМИР"


35
36
37
# File 'lib/modules/string.rb', line 35

def upcase
  ::StTools::String.upcase(self)
end