Divider で、簡単に文字列と配列を分割できます
文字列や配列を複数の方法で分割するための軽量ユーティリティ・ライブラリです。
インストール
npm
npm install @nyaomaru/divider
使い方
basic
import { divider } from '@nyaomaru/divider';// divide a string by index positionconst helloArray = divider('hello', 1, 3);// ['h', 'el', 'lo']const [hello1, hello2, ...restHello] = divider('hello', 1, 3, 4);// hello1 = 'h'// hello2 = 'el'// restHello = ['l', 'o']// split string using character delimiterconst divideWithString = divider('hello', 'e');// ['h', 'llo']const divideWithMultipleString = divider('hello', 'l');// ['he', 'o']// divide the array of stringsconst words = ['hello', 'world'];const dividedWords = divider(words, 2);// [['he', 'llo'], ['wo', 'rld']]const dividedWordsWithFlattenOption = divider(words, 2, { flatten: true });// ['he', 'llo', 'wo', 'rld']const dividedWithTrimOption = divider([' hello ', ' world '], 2, { trim: true });// ['h', 'ello', 'w', 'orld']
機能
文字列分割
シンプルなAPIで、インデックス位置や文字区切りで文字列を分割します。
配列処理
同じ直感的なインターフェイスで文字列の配列を処理します。
ネストされた配列
ネストされた配列をサポートしており、複雑なデータ構造を扱うことができます。
柔軟な出力
結果を配列として取得するか、個々の変数に対してデストラクチャリングを使用できます。
フラットオプション
フラットオプションを用いることで取得結果を単純化し、単一レベルの配列を得ることができます。
混合区切り
インデックス位置と文字区切りを同じ操作で結合できます。
API リファレンス
divider(input, ...dividers, options?)
文字列または文字列配列を指定された区切りで分割し、配列またはネストされた配列として返します。
Parameters:
input
: String か Arraydividers
: 数値 (インデックス位置) または文字列 (文字区切り)options
: 任意設定のオプション
Options:
flatten
: Boolean - trueの場合、結果を1つの配列にフラット化します。trim
: Boolean - trueの場合、結果に含まれる空白をトリムします。exclude
: `'none' | 'empty' | 'whitespace'` - 結果から空のセグメントや空白を除外する方法を指定します。
dividerFirst(input, ...dividers)
分割された文字列の最初の要素を返します。
Parameters:
input
: String か Arraydividers
: 数値 (インデックス位置) または文字列 (文字区切り)
dividerLast(input, ...dividers)
分割された文字列の最後の要素を返します。
Parameters:
input
: String か Arraydividers
: 数値 (インデックス位置) または文字列 (文字区切り)
dividerLoop(input, size, options?)
固定幅のチャンクサイズで文字列を分割します。一定の文字数でスライスしたいときに便利です。
Parameters:
input
: String か Arraysize
: 各チャンクのサイズ(文字数)を指定します。正の整数である必要があります。options
: 任意設定のオプション
Options:
flatten
: Boolean - trueの場合、結果を1つの配列にフラット化します。trim
: Boolean - trueの場合、結果に含まれる空白をトリムします。exclude
: `'none' | 'empty' | 'whitespace'` - 結果から空のセグメントや空白を除外する方法を指定します。startOffset
: Number - 分割する際の開始インデックスオフセット(`dividerLoop` のみ)maxChunks
: Number - 許可される最大チャンク数。余分なチャンクは最後のチャンクに結合されます。
dividerNumberString(input, options?)
数値と文字列を分割します。
Parameters:
input
: String か Arrayoptions
: 任意設定のオプション
Options:
flatten
: Boolean - trueの場合、結果を1つの配列にフラット化します。trim
: Boolean - trueの場合、結果に含まれる空白をトリムします。exclude
: `'none' | 'empty' | 'whitespace'` - 結果から空のセグメントや空白を除外する方法を指定します。
プリセット
Divider の上に構築された一般的な実務で利用する想定のプリセットです。
emailDivider()
メールアドレスをローカル部分とドメイン部分に分割し、オプションで TLD 分割を行います。
csvDivider()
引用符付きフィールドサポート、カスタム区切り文字/引用符、およびトリミング機能を備えたCSV対応の分割処理です。
pathDivider()
ファイルパスを `/` または `|` で分割し、空のセグメントをトリムまたは保持するオプションがあります。