st_tools 0.3.5 → 0.3.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +8 -0
- data/lib/st_tools.rb +3 -3
- data/lib/st_tools/string.rb +3 -5
- data/lib/st_tools/system.rb +3 -2
- data/lib/st_tools/version.rb +1 -1
- data/test/string_caps_lib_spec.rb +25 -0
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4dedf4fc8ccd753d54214b62ff8438fb370da178
|
4
|
+
data.tar.gz: 697d2055b03e5e4c044ad6edd4066336199eaeb9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c823535f25da3a3b8c278684c1bea45ebfcdfe37db55395a2e462edb3ee446c5d3c03b99f85d546414d4f350a2cc3ef239237636f402a1b359a8822c3322fcf9
|
7
|
+
data.tar.gz: 6a8b3d1c4c5479dcd2b6c9501d99adb9a193777fe2e307e3e5d031bced63822b28e08fcf7680da783b9ac1c050c84cafcc65687999bc6c17986381373a04ee39
|
data/README.md
CHANGED
@@ -161,6 +161,14 @@ StTools::String.normalize(' Москва ') # => "москва"
|
|
161
161
|
|
162
162
|
```ruby
|
163
163
|
StTools::String.caps('санКТ-петерБург') # => "Санкт-Петербург"
|
164
|
+
StTools::String.caps('1-Я владимирская') # => "1-я Владимирская"
|
165
|
+
StTools::String.caps('stan.zhuravlev@mail.ru') # => "Stan.Zhuravlev@mail.Ru"
|
166
|
+
StTools::String.caps('а.с. ПУШКИН') # => "А.С. Пушкин"
|
167
|
+
StTools::String.caps('ivan_petrov') # => "Ivan_Petrov"
|
168
|
+
StTools::String.caps('н.а.римский-корсаков') # => "Н.А.Римский-Корсаков"
|
169
|
+
|
170
|
+
StTools::String.caps('н.а.римский-корсаков пришел в гости к в.и. ленину на улицу героев 1812-го года')
|
171
|
+
#=> "Н.А.Римский-Корсаков Пришел В Гости К В.И. Ленину На Улицу Героев 1812-го Года"
|
164
172
|
```
|
165
173
|
|
166
174
|
Для реализации деморежимов различных приложений иногда надо скрыть реальный результат.
|
data/lib/st_tools.rb
CHANGED
@@ -1,12 +1,12 @@
|
|
1
|
-
|
1
|
+
$LOAD_PATH.unshift File.join(__dir__, *%w[.. lib])
|
2
2
|
|
3
|
-
require "
|
3
|
+
require "st_tools/version"
|
4
4
|
|
5
5
|
require 'ruby-progressbar'
|
6
6
|
require 'yaml'
|
7
7
|
|
8
8
|
module StTools
|
9
|
-
require "
|
9
|
+
require "st_tools/common"
|
10
10
|
require 'st_tools/system'
|
11
11
|
require 'st_tools/human'
|
12
12
|
require 'st_tools/fias'
|
data/lib/st_tools/string.rb
CHANGED
@@ -169,12 +169,10 @@ module StTools
|
|
169
169
|
# StTools::String.caps("саНКТ-петеРБург") #=> "Санкт-Петербург"
|
170
170
|
def self.caps(text)
|
171
171
|
return nil if text.nil?
|
172
|
-
str = self.downcase(text)
|
173
|
-
str
|
174
|
-
|
175
|
-
str[i] = '-' if (text.to_s[i,1] == '-')
|
172
|
+
str = self.downcase(text)
|
173
|
+
str.gsub!(/(^[а-яa-z]|[а-яa-z\s]-[а-яa-z]|[\.\s\_][а-яa-z])/) do |part|
|
174
|
+
part.gsub(/.\b$/) { |x| self.upcase(x) }
|
176
175
|
end
|
177
|
-
|
178
176
|
return str
|
179
177
|
rescue
|
180
178
|
return text
|
data/lib/st_tools/system.rb
CHANGED
@@ -33,8 +33,9 @@ module StTools
|
|
33
33
|
lines.each do |one|
|
34
34
|
res = one unless one.match(/grep/)
|
35
35
|
end
|
36
|
-
res = res.split(
|
37
|
-
File.basename(res)
|
36
|
+
res = res.split(/\d{1,2}\:\d{1,2}\.\d{0,100}/).last
|
37
|
+
res = File.basename(res)
|
38
|
+
res.split(' ').first
|
38
39
|
end
|
39
40
|
|
40
41
|
end
|
data/lib/st_tools/version.rb
CHANGED
@@ -0,0 +1,25 @@
|
|
1
|
+
require 'rspec'
|
2
|
+
require 'st_tools'
|
3
|
+
|
4
|
+
describe 'Проверка методов StTools::String.caps' do
|
5
|
+
|
6
|
+
class String
|
7
|
+
include ::StTools::Module::String
|
8
|
+
end
|
9
|
+
|
10
|
+
test = Hash.new
|
11
|
+
test['stan.zhuravlev'] = 'Stan.Zhuravlev'
|
12
|
+
test['н.а.римский-корсаков'] = 'Н.А.Римский-Корсаков'
|
13
|
+
test['а.с. ПУШКИН'] = 'А.С. Пушкин'
|
14
|
+
test['1-я владимирская улица'] = '1-я Владимирская Улица'
|
15
|
+
test['ivan_petrov'] = 'Ivan_Petrov'
|
16
|
+
|
17
|
+
|
18
|
+
test.each do |input, result|
|
19
|
+
it input do
|
20
|
+
test = ::StTools::String.caps(input)
|
21
|
+
expect(test).to eq(result)
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: st_tools
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Stan Zhuravlev
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-05-
|
11
|
+
date: 2015-05-19 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -100,6 +100,7 @@ files:
|
|
100
100
|
- test/fias_lib_spec.rb
|
101
101
|
- test/human_lib_spec.rb
|
102
102
|
- test/progress_bar_lib_spec.rb
|
103
|
+
- test/string_caps_lib_spec.rb
|
103
104
|
- test/string_lib_spec.rb
|
104
105
|
- test/system_lib_spec.rb
|
105
106
|
homepage: https://github.com/StanZhuravlev/st_tools
|