st_tools 0.3.5 → 0.3.6
Sign up to get free protection for your applications and to get access to all the features.
- 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
|