normalize-ja-input
v0.1.1
Published
Tiny TypeScript utility for normalizing Japanese form input.
Maintainers
Readme
normalize-ja-input
Tiny TypeScript utility for normalizing Japanese form input.
import { normalizeJaInput } from "normalize-ja-input"
normalizeJaInput(" TEL:090ー1234ー5678 ")
// => "TEL:090-1234-5678"Features
- 全角数字を半角数字に変換
- 全角英字を半角英字に変換
- 全角スペースを半角スペースに変換
- 連続する空白を1つに正規化
- 日本語入力で混ざりがちなハイフン類を
-に統一 - 依存ゼロ
- TypeScript対応
Installation
npm install normalize-ja-inputUsage
import { normalizeJaInput } from "normalize-ja-input"
normalizeJaInput(" 山田 太郎 ")
// => "山田 太郎"
normalizeJaInput("12345")
// => "12345"
normalizeJaInput("ABCxyz")
// => "ABCxyz"
normalizeJaInput("090ー1234−5678")
// => "090-1234-5678"Options
normalizeJaInput(input, {
trim: true,
collapseSpaces: true,
spaces: "halfwidth",
digits: "halfwidth",
alphabets: "halfwidth",
hyphens: "ascii",
})trim
Type: boolean
Default: true
前後の空白を削除します。
normalizeJaInput(" 山田 ")
// => "山田"collapseSpaces
Type: boolean
Default: true
連続する半角スペース、タブ、改行を1つの半角スペースにします。
normalizeJaInput("山田 太郎")
// => "山田 太郎"spaces
Type: "preserve" | "halfwidth"
Default: "halfwidth"
全角スペースを半角スペースにします。
normalizeJaInput("山田 太郎")
// => "山田 太郎"digits
Type: "preserve" | "halfwidth"
Default: "halfwidth"
全角数字を半角数字にします。
normalizeJaInput("123")
// => "123"alphabets
Type: "preserve" | "halfwidth"
Default: "halfwidth"
全角英字を半角英字にします。
normalizeJaInput("ABCxyz")
// => "ABCxyz"hyphens
Type: "preserve" | "ascii"
Default: "ascii"
日本語入力で混ざりがちなハイフン類を ASCII の - に統一します。
normalizeJaInput("090ー1234−5678")
// => "090-1234-5678"Live Demo
- Demo →
https://fusaihanabi.github.io/normalize-ja-input - npm →
https://www.npmjs.com/package/normalize-ja-input - GitHub →
https://github.com/fusaihanabi/normalize-ja-input - Official →
https://dl.fusai-hanabi.com
What this library does not do
This library intentionally does not validate Japanese phone numbers, postal codes, addresses, or names.
It only normalizes common input variations before validation or storage.
License
MIT
