流暢なJavaScript Stringable
プロジェクト目標
Tinkerableデモ
ラルヴェルJS
"Laravel's Illuminate\Str & Illuminate\Stringify Including Str.of() In Javascript"
インストール
国立天文台
npm install --save-dev laravel-js-str
糸
yarn add laravel-js-str --save
CDN
<script src='https://unpkg.com/laravel-js-str@latest/build/index.min.js'></script>
str
Documentation For Each String Method Points To Laravel. Javascript examples are below, Laravel docs will specify what each method specifically does. Replace Str::method() with Str.() when using this package
"Laravel's Illuminate\Str & Illuminate\Stringify Including Str.of() In Javascript"
npm install --save-dev laravel-js-str
yarn add laravel-js-str --save
<script src='https://unpkg.com/laravel-js-str@latest/build/index.min.js'></script>
Documentation For Each String Method Points To Laravel. Javascript examples are below, Laravel docs will specify what each method specifically does. Replace Str::method() with Str.() when using this package
Str.words
const { Str } = require('laravel-js-str');
let slice = Str.after('This is my name', 'This is');
// ' my name'
const { Str } = require('laravel-js-str');
let slice = Str.afterLast('App\Http\Controllers\Controller', '\\');
// 'Controller'
const { Str } = require('laravel-js-str');
let slice = Str.ascii('û');
// 'u'
const { Str } = require('laravel-js-str');
let slice = Str.before('This is my name', 'my name');
// 'This is '
const { Str } = require('laravel-js-str');
let slice = Str.beforeLast('This is my name', 'is');
// 'This '
const { Str } = require('laravel-js-str');
let slice = Str.between('This is my name', 'This', 'name');
// ' is my '
const { Str } = require('laravel-js-str');
let converted = Str.camel('foo_bar');
// fooBar
const { Str } = require('laravel-js-str');
let contains = Str.contains('This is my name', 'my');
// true
const { Str } = require('laravel-js-str');
let contains = Str.contains('This is my name', ['my', 'foo']);
// true
const { Str } = require('laravel-js-str');
let containsAll = Str.containsAll('This is my name', ['my', 'name']);
// true
const { Str } = require('laravel-js-str');
let result = Str.endsWith('This is my name', 'name');
// true
const { Str } = require('laravel-js-str');
let result = Str.endsWith('This is my name', ['name', 'foo']);
// true
result = Str.endsWith('This is my name', ['this', 'foo']);
// false
const { Str } = require('laravel-js-str');
let adjusted = Str.finish('this/string', '/');
// this/string/
adjusted = Str.finish('this/string/', '/');
// this/string/
const { Str } = require('laravel-js-str');
let matches = Str.is('foo*', 'foobar');
// true
matches = Str.is('baz*', 'foobar');
// false
iSASCII実験的、それはすべてのシナリオで動作しない自信がありますconst { Str } = require('laravel-js-str');
let isAscii = Str.isAscii('Taylor');
// true
isAscii = Str.isAscii('ü');
// false
const { Str } = require('laravel-js-str');
let isUuid = Str.isUuid('a0a2a2d2-0b87-4a18-83f2-2529882be2de');
// true
isUuid = Str.isUuid('laravel');
// false
const { Str } = require('laravel-js-str');
let converted = Str.kebab('fooBar');
// foo-bar
const { Str } = require('laravel-js-str');
let length = Str.length('Laravel');
// 7
const { Str } = require('laravel-js-str');
let truncated = Str.limit('The quick brown fox jumps over the lazy dog', 0);
// The quick brown fox...
const { Str } = require('laravel-js-str');
let truncated = Str.limit('The quick brown fox jumps over the lazy dog', 0, '(...)');
// The quick brown fox (...)
const { Str } = require('laravel-js-str');
let converted = Str.lower('LARAVEL');
// laravel
Plural Package Used const { Str } = require('laravel-js-str');
let plural = Str.plural('car');
// cars
plural = Str.plural('child');
// children
Plural Package Used const { Str } = require('laravel-js-str');
let plural = Str.plural('child');
// children
plural = Str.plural('child');
// child
const { Str } = require('laravel-js-str');
let random = Str.random(40);
const { Str } = require('laravel-js-str');
let string = 'The event will take place between ? and ?';
let replaced = Str.replaceArray(['?', '8:30', '9:00'], string);
// The event will take place between 8:30 and 9:00
const { Str } = require('laravel-js-str');
let replaced = Str.replaceFirst('the', 'a', 'the quick brown fox jumps over the lazy dog');
// a quick brown fox jumps over the lazy dog
const { Str } = require('laravel-js-str');
let replaced = Str.replaceLast('the', 'a', 'the quick brown fox jumps over the lazy dog');
// the quick brown fox jumps over a lazy dog
const { Str } = require('laravel-js-str');
let singular = Str.singular('cars');
// car
singular = Str.singular('children');
// child
const { Str } = require('laravel-js-str');
let slug = Str.slug('Laravel 5 Framework', '-');
// laravel-5-framework
const { Str } = require('laravel-js-str');
let converted = Str.snake('fooBar');
// foo_bar
const { Str } = require('laravel-js-str');
let adjusted = Str.start('this/string', '/');
// /this/string
adjusted = Str.start('/this/string', '/');
// /this/string
const { Str } = require('laravel-js-str');
let result = Str.startsWith('This is my name', This');
// true
const { Str } = require('laravel-js-str');
let converted = Str.studly('foo_bar');
// FooBar
const { Str } = require('laravel-js-str');
let converted = Str.substr('The Laravel Framework', , );
// Laravel
const { Str } = require('laravel-js-str');
let converted = Str.title('a nice title uses the correct case');
// A Nice Title Uses The Correct Case
const { Str } = require('laravel-js-str');
let string = Str.ucfirst('foo bar');
// Foo bar
const { Str } = require('laravel-js-str');
let string = Str.upper('laravel');
// LARAVEL
const { Str } = require('laravel-js-str');
return Str.uuid();
const { Str } = require('laravel-js-str');
Str.words('Perfectly balanced, as all things should be.', 3, '>>>');
// Perfectly balanced, as >>>
const { Str } = require('laravel-js-str');
let slice = Str.of('This is my name').after('This is');
// ' my name'
const { Str } = require('laravel-js-str');
let slice = Str.of('App\Http\Controllers\Controller').afterLast('\\');
// 'Controller'
const { Str } = require('laravel-js-str');
let string = Str.of('Taylor').append(' Otwell');
// 'Taylor Otwell'
実験的な方法、これがすべてのケースで働くのを確信しないconst { Str } = require('laravel-js-str');
let string = Str.of('ü').ascii();
// 'u'
const { Str } = require('laravel-js-str');
let string = Str.of('/foo/bar/baz').basename();
// 'baz'
const { Str } = require('laravel-js-str');
let string = Str.of('/foo/bar/baz.jpg').basename('.jpg');
// 'baz'
const { Str } = require('laravel-js-str');
let slice = Str.of('This is my name').before('my name');
// 'This is '
const { Str } = require('laravel-js-str');
let slice = Str.of('This is my name').beforeLast('is');
// 'This '
const { Str } = require('laravel-js-str');
let converted = Str.of('foo_bar').camel();
// fooBar
const { Str } = require('laravel-js-str');
let contains = Str.of('This is my name').contains('my');
// true
const { Str } = require('laravel-js-str');
let contains = Str.of('This is my name').contains(['my', foo']);
// true
const { Str } = require('laravel-js-str');
let containsAll = Str.of('This is my name').containsAll(['my', 'name']);
// true
const { Str } = require('laravel-js-str');
let string = Str.of('/foo/bar/baz').dirname();
// '/foo/bar'
const { Str } = require('laravel-js-str');
let string = Str.of('/foo/bar/baz').dirname(2);
// '/foo'
const { Str } = require('laravel-js-str');
let result = Str.of('This is my name').endsWith('name');
// true
const { Str } = require('laravel-js-str');
let result = Str.of('This is my name').endsWith(['name', 'foo']);
// true
result = Str.of('This is my name').endsWith(['this', 'foo']);
// false
const { Str } = require('laravel-js-str');
let result = Str.of('Laravel').exactly('Laravel');
// true
Collect.js const { Str } = require('laravel-js-str');
let collection = Str.of('foo bar baz').explode(' ');
// collect(['foo', 'bar', 'baz'])
const { Str } = require('laravel-js-str');
let adjusted = Str.of('this/string').finish('/');
// this/string/
adjusted = Str.of('this/string/').finish('/');
// this/string/
const { Str } = require('laravel-js-str');
let matches = Str.of('foobar').is('foo*');
// true
matches = Str.of('foobar').is('baz*');
// false
iSASCIIは、すべてのケースでは正ではなく、実験的ですconst { Str } = require('laravel-js-str');
let result = Str.of('Taylor').isAscii();
// true
result = Str.of('ü').isAcii();
// false
const { Str } = require('laravel-js-str');
let result = Str.of(' ').trim().isEmpty();
// true
result = Str.of('Laravel').trim().isEmpty();
// false
const { Str } = require('laravel-js-str');
let result = Str.of(' ').trim().isNotEmpty();
// false
result = Str.of('Laravel').trim().isNotEmpty();
// true
const { Str } = require('laravel-js-str');
let converted = Str.of('fooBar').kebab();
// foo-bar
const { Str } = require('laravel-js-str');
let length = Str.of('Laravel').length();
// 7
const { Str } = require('laravel-js-str');
let truncated = Str.of('The quick brown fox jumps over the lazy dog').limit(20);
// The quick brown fox...
const { Str } = require('laravel-js-str');
let truncated = Str.of('The quick brown fox jumps over the lazy dog').limit(20, ' (...)');
// The quick brown fox (...)
const { Str } = require('laravel-js-str');
let result = Str.of('LARAVEL').lower();
// 'laravel'
const { Str } = require('laravel-js-str');
let string = Str.of(' Laravel ').ltrim();
// 'Laravel '
string = Str.of('/Laravel/').ltrim('/');
// 'Laravel/'
const { Str } = require('laravel-js-str');
let result = Str.of('foo bar').match('/bar/');
// 'bar'
result = Str.of('foo bar').match('/foo (.*)/');
// 'bar'
マッチオールconst { Str } = require('laravel-js-str');
let result = Str.of('bar foo bar').matchAll('/bar/');
// collect(['bar', 'bar'])
const { Str } = require('laravel-js-str');
let result = Str.of('bar fun bar fly').matchAll('/f(\w*)/');
// collect(['un', 'ly']);
const { Str } = require('laravel-js-str');
let plural = Str.of('car').plural();
// cars
plural = Str.of('child').plural();
// children
const { Str } = require('laravel-js-str');
let plural = Str.of('child').plural(2);
// children
plural = Str.of('child').plural(1);
// child
const { Str } = require('laravel-js-str');
let string = Str.of('Framework').prepend('Laravel ');
// Laravel Framework
const { Str } = require('laravel-js-str');
let replaced = Str.of('Laravel 6.x').replace('6.x', '7.x');
// Laravel 7.x
const { Str } = require('laravel-js-str');
let string = 'The event will take place between ? and ?';
let replaced = Str.of(string).replaceArray('?', ['8:30', '9:00']);
// The event will take place between 8:30 and 9:00
const { Str } = require('laravel-js-str');
let replaced = Str.of('the quick brown fox jumps over the lazy dog').replaceFirst('the', 'a');
// a quick brown fox jumps over the lazy dog
const { Str } = require('laravel-js-str');
let replaced = Str.of('the quick brown fox jumps over the lazy dog').replaceLast('the', 'a');
// the quick brown fox jumps over a lazy dog
const { Str } = require('laravel-js-str');
let replaced = Str.of('(+1) 501-555-1000').replace('/[^A-Za-z0-9]++/', '');
//'15015551000'
const { Str } = require('laravel-js-str');
let string = Str.of(' Laravel ').rtrim();
// ' Laravel'
string = Str.of('/Laravel/').rtrim('/');
// '/Laravel'
const { Str } = require('laravel-js-str');
let singular = Str.of('cars').singular();
// car
singular = Str.of('children').singular();
// child
const { Str } = require('laravel-js-str');
let slug = Str.of('Laravel Framework').slug('-');
// laravel-framework
const { Str } = require('laravel-js-str');
let converted = Str.of('fooBar').snake();
// foo_bar
const { Str } = require('laravel-js-str');
let segments = Str.of('one, two, three').split('/[\s, +/');
// collect(["one", "two", "three"])
const { Str } = require('laravel-js-str');
let adjusted = Str.of('this/string').start('/');
// /this/string
adjusted = Str.of('/this/string').start('/');
// /this/string
const { Str } = require('laravel-js-str');
let result = Str.of('This is my name').startsWith('This');
// true
const { Str } = require('laravel-js-str');
let converted = Str.of('foo_bar').studly();
// FooBar
const { Str } = require('laravel-js-str');
let string = Str.of('Laravel Framework').substr(8);
// Framework
string = Str.of('Laravel Framework').substr(8, );
// Frame
const { Str } = require('laravel-js-str');
let converted = Str.of('a nice title uses the correct case').title();
// A Nice Title Uses The Correct Case
const { Str } = require('laravel-js-str');
let string = Str.of(' Laravel ').trim();
// 'Laravel'
string = Str.of('/Laravel/').trim('/');
// 'Laravel'
const { Str } = require('laravel-js-str');
let string = Str.of('foo bar').ucfirst();
// Foo bar
const { Str } = require('laravel-js-str');
let adjusted = Str.of('laravel').upper();
// LARAVEL
const { Str } = require('laravel-js-str');
let string = Str.of(' ').whenEmpty(function(string) {
return string.trim().prepend('Laravel');
});
// 'Laravel'
const { Str } = require('laravel-js-str');
let string = Str.of('Perfectly balanced, as all things should be.').words(3, '>>>');
// Perfectly balanced, as >>>
遊び場の例
好奇心が、100 %ではないかどうか、これはあなたが探しているものですか?
The most powerful method is Str.of('example'), allowing us to fluently chain Str methods together
例
let { Str } = require('laravel-js-str');
let home = 'https://planets.com';
let title = 'hello mars, a cool world for you to visit, maybe?';
let article = Str.of(title).replaceFirst(',', '')
.after('hello')
.before('for you')
.trim()
.start('/')
.finish('/')
.kebab();
let resource = home + article
// resource value:
// 'https://planets.com/mars-a-cool-world/'
//
// article value:
// Stringable: { value: 'https://planets.com/mars-a-cool-world-to-visit', replace, before, after, etc... }
//
利用
The most powerful method is Str.of('example'), allowing us to fluently chain Str methods together
例
let { Str } = require('laravel-js-str');
let home = 'https://planets.com';
let title = 'hello mars, a cool world for you to visit, maybe?';
let article = Str.of(title).replaceFirst(',', '')
.after('hello')
.before('for you')
.trim()
.start('/')
.finish('/')
.kebab();
let resource = home + article
// resource value:
// 'https://planets.com/mars-a-cool-world/'
//
// article value:
// Stringable: { value: 'https://planets.com/mars-a-cool-world-to-visit', replace, before, after, etc... }
//
貢献する
このプロジェクトにはprsが歓迎されている.
このパッケージを改善したい場合は
機能やドキュメントを改善してください.
セキュリティ脆弱性
あなたがきれいなコードスタジオパッケージの中で、または、特に内部でセキュリティ脆弱性を発見するならば
は、Zacharyホートンに電子メールを送ってください[email protected] . すべてのセキュリティ脆弱性を迅速に対処されます.
変更ログ
リリース1.0.0
バージョン管理
Semantic Versioning
コードステータス
ステージ
ルール
例バージョン
ファーストリリース
新製品
1.0.0から始める
1.0.0
後方互換性のバグ修正
パッチリリース
番目の桁を増やす
1.0.1
後方互換性の新機能
マイナーリリース
中間桁を増やし、最後の桁をゼロにリセットする
1.1.0
後方互換性を破る変更
メジャーリリース
最初の桁をインクリメントし、ゼロにリセットミドルと最後の数字
2.0.0
許可
ミトセントZachary Horton (Clean Code Studio) - Clean Code Studio Packages
Reference
この問題について(流暢なJavaScript Stringable), 我々は、より多くの情報をここで見つけました https://dev.to/cleancodestudio/fluent-javascript-stringable-laravel-inspired-1phcテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol