NYSIISエンコーダー
BishopはNYSIISでBASAPになります。綴りが違っても発音が近い名前に同じキーを与える音声コードです。人名や姓を入れると、コードと計算に使った整理済みの文字が分かります。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- 名前
- Bishop
- コード
- BASAP
- 正規化値
- BISHOP
- 長さ
- 6
NYSIIS(New York State Identification and Intelligence System の音声コード)は、1970年に設計され、古典的なアメリカ式 Soundex よりも高い照合精度で個人名・家族名を索引化します。元の綴りの形をより多く残すアルファベットキーを保ちつつ、母音とよくある子音群を折りたたみ、同音・近似同音が同じコードに載るようにします。この nysiis エンコーダーは空でない名前文字列を受け取り、非文字を取り除き、標準の接頭・接尾変換を適用し、公式の潰し規則で残りを走査して、結果コードと符号化に使った正規化形を返します。
NYSIIS が名前から音声キーを組み立てる仕組み
NYSIIS は名前を大文字化し、ラテン文字 A–Z のみを残します。数字・空白・ハイフン・アポストロフィ・句読点は取り除かれるため、O'Brien や brown, sr のフォーム欄でも掃除後は安定した文字列になります。接頭規則で名前の先頭を書き換えます。
MAC→MCC、KN→NN、先頭の K→C、PH/PF→FF、SCH→SSS です。接尾規則で末尾を書き換えます。EE/IE→Y、DT/RT/RD/NT/ND→D です。
変換後の文字列の先頭文字がキーの先頭になります。2文字目以降は1規則ずつ適用します。EV→AF、その他の母音→A、Q→G、Z→S、M→N、KN→N およびその他の K→C、SCH→SSS および PH→FF、隣が母音でないとき H は直前文字に、母音の後の W は直前文字に置き換えます。
隣り合う同一文字は潰し、連続が繰り返されないようにします。走査後は末尾の S を削除し、末尾の AY を Y にし、末尾の A を削除します。テストに固定できる古典例は Bishop→BASAP、Willis→WAL、Matthews→MAT、Jacobs→JACAB、knight→NAGT、Mackenzie→MCANSY です。
入力契約・空フラグ・応答形とよくある誤り
成功時の応答には、NYSIIS のアルファベット値である code、形を嗅がずに分岐できるよう method が nysiis、元文字列を返す name、実際に符号化した大文字 A–Z 列の normalized、成功時は常に false の empty、除去前の元文字数の length が含まれます。
NYSIIS を暗号化や個人の一意識別子として扱わないでください。無関係な姓でも衝突し得ますが、その制御された衝突はファジー照合の利点であり不具合ではありません。
検索意図が nysiis エンコーダー、ニューヨーク州音声コード、Soundex を超える名前照合のときはこのランディングを選び、アメリカ式 Soundex・NATO 音声綴り・Metaphone は別意図のため別ページに置きます。
純粋な A–Z 以外のアクセント文字は他の非文字と同様に除去されるため、ソースにダイアクリティカルがある場合で参加させたいときは ASCII 正規化形を渡してください。本実装は6文字への強制切り詰めではなく末尾掃除後の完全コードを返すため、長い姓も NYSIIS が想定した追加の詳細を保てます。
NYSIISが名前の照合で役立つ場面
系譜学者や地域史プロジェクトは、綴りが一貫しない国勢調査・裁判・乗客名簿の姓を、4文字 Soundex バケットより形を残しつつグループ化するために nysiis エンコーダーを使います。CRM とカスタマーサポートは、完全なエンティティ解決エンジンを立てずに、人間レビュー前に似た姓を事前クラスタできます。
歴史的索引アルゴリズムの授業デモには、教師が接頭・母音規則を板書で説明しながら学生がブラウザから呼べる決定論的オラクルが必要です。データ清掃ノートブックは、レコードリンケージ用のエンティティ解決特徴を作るとき、小文字や Soundex 列の隣に NYSIIS を特徴列として出せます。エンジンが拒否した検証失敗は残高を消費しません。
元名は他の KIT parse アイテムと同じ保持規則に従い、アルゴリズムはアイソレート間で完全に決定論的なため結果を CI フィクスチャに固定できます。本ツールは名前と短いラベル向けで、数メガバイトの文書向けではありません。
後段が別の音声・暗号方式を要する場合にのみ他のテキストユーティリティと組み合わせ、SEO 意図を鋭く保つため NYSIIS は専用ランディングに置き、アルファベットコードが Soundex と比べてできること・できないことについてガイドを誠実に保ちます。
活用例
系譜と裁判記録の姓グループ化
歴史的なニューヨークおよび米国記録で綴りが異なっても響きが似る家族名を、完全な NYSIIS コードの比較でクラスタします。
CRM でのファジー名前事前照合
完全なエンティティ解決スタックを入れずに、Soundex より詳細を残して似た顧客姓を人間レビュー用にまとめます。
よくある質問
NYSIIS で名前を符号化するには?
応答の code に NYSIIS 値(Bishop なら BASAP)が入ります。
NYSIIS と Soundex の違いは?
Soundex は1文字+3桁を返します。NYSIIS は接頭・接尾・母音規則付きのアルファベットキーを返し、名前照合のためにより多くの綴り詳細を保ちます。
結果は6文字に切り詰められますか?
本ツールは末尾の S・AY・A 掃除後の完全コードを返します。歴史的な6文字制限は強制せず、長い名前も詳細を保てます。
違う名前が同じNYSIISコードになることはありますか?
はい、それが狙いです。関係のない多くの姓が同じコードを共有するため、あいまいな名前照合ができます。そのため、個人を特定する番号や名前を隠す手段としては使わないでください。
アクセント記号や空白、アポストロフィはどうなりますか?
AからZ以外の文字と同じく、計算の前に取り除かれます。O'BrienはOBRIENとして符号化されます。アクセント付きの文字も消えるので、数えたい場合はアクセントなしで入力してください。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/enc/nysiis \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"name":"Bishop"}'const res = await fetch("https://api.kit.forhosting.com/enc/nysiis", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"name": "Bishop"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/enc/nysiis",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"name": "Bishop"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/enc/nysiis", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"name":"Bishop"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"name":"Bishop"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/enc/nysiis", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"name": "Bishop"
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.nysiis",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
空入力、name 欠落、ラテン文字を含まない文字列は invalid_input で失敗し、呼び出し側は架空のコードを作らず空フォームをフラグできます。無料のブラウザ経路と前払い API は同じ純粋パース論理を共有するため、授業デモと本番の名前照合パイプラインが Bishop・Willis・Mackenzie で食い違うことはありません。
入力契約・空フラグ・応答形とよくある誤り
符号化したい人名または家族名を、必須文字列フィールド name に入れた JSON 本体を POST してください。name 欠落、非文字列、長さゼロ、空白のみ、ラテン文字なしはすべて invalid_input となり、前払い API では課金されません。これは製品が約束する空入力フラグ経路を、空コード付き成功本体ではなく厳格な検証エラーとして表したものです。
NYSIIS API が活きる場面と料金の仕組み
単発確認と教育には無料のブラウザツールを、バックエンド・サーバレス関数・SDK が残高付きの安定契約を要するときは前払い KIT API を、成功1件あたり $0.002 で使います。ペイロードは Worker アイソレートのアイテム呼び出しに適した通常の名前長に保ってください。
連携の活用例
授業での音声索引デモ
Bishop が BASAP になり空フォームが明確に失敗することを、前払い API と同じ無料ブラウザ経路で学生に示します。
技術的な質問
名前が空の場合はどうなりますか?
リクエストは invalid_input で失敗します。欠落・空白・文字なし入力は empty とフラグされ、前払い API では課金されません。
NYSIIS エンコーダーは無料ですか?
ブラウザツールはお使いの端末で無料です。API 呼び出しは成功1件あたり $0.002 の前払い KIT 残高を使い、検証失敗は課金されません。