区切り文字で行を結合
apple、banana、cherryの3行が「apple, banana, cherry」の1行になります。空行は初期設定で除かれ、各行の前後の空白も取り除かれます。区切りには縦線やセミコロン、タブも使え、何も入れずにつなぐこともできます。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- テキスト
- apple banana cherry
- テキスト
- apple, banana, cherry
- 元の値
- apple banana cherry
- 区切り文字
- ,
- 数量
- 3
区切り文字で行を結合するのは、縦のリストを1本のインライン文字列にする日常作業です。CSVセル用のタグ、BCC欄のメール、クエリ引数のSKU、カンマ区切り見出しの氏名などが典型です。このツールは複数行テキストを読み、Windows・Unix・クラシックMac・Unicodeの改行で分割し、必要なら空行を除き、残りの行を選んだ区切りでつなぎます。既定はカンマとスペースで、縦棒・セミコロン・タブなど任意ののりも使えます。各改行をスペースに置き換えるだけの折り返し解除とは違い、各行をリスト項目として扱い、Array.joinと同様に結合します。空行は指定しない限り余分な区切りになりません。応答は1行の結果、使った区切り、見た行数、結合した個数、元の貼り付けのエコーを返します。
区切り文字で行を結合する仕組み
区切り文字での行結合はリスト変換であり、段落の折り返し解除ではありません。既定の区切りはカンマのあとにスペースで、カンマで行を結合したい、列をインラインタグにしたいという検索に応えます。裸のカンマ、スペース付きの縦棒、セミコロン、タブ、語AND、あるいは断片を密着させたいときの空文字列など、任意の文字列を渡せます。
次にエンジンは一般的な行終端で貼り付けを分割します。WindowsのCRLFは1つの区切りとして扱い、PCのファイルが復帰と改行の間に幽霊の空トークンを作らないようにします。単独のLF、単独のCR、Unicode next-line、行区切り、段落区切りはそれぞれ新しい項目を始めます。
各項目はトリムされ、貼り付けた列の余計な空白が結合結果へ漏れません。連続する2つの改行は連続する2つの区切りになります。最後に残った断片を選んだのりで連結し、1行で返します。
区切り文字で行を結合するツールが役立つ場面
表計算の列、チケットのメール一覧、CMSのタグの山、倉庫出力のSKUブロックを貼り付け、フォーム欄・クエリ引数・CSVセル用の1本のインライン文字列が必要なときは、無料のブラウザツールで区切り文字による行結合を呼び出してください。検証失敗はエンジンが拒否したあと残高を消費しません。
このランディングは「行を区切り文字で結合」「カンマで行を結合」「リストを区切りテキストに変換」という検索向けです。各改行をスペースに置き換えて文を読みやすく保つ改行削除とは意図が違います。ここでは各行がリスト項目で、区切りは利用者が選びます。
行の並べ替え、重複除去、行数カウントでもなく、それらは縦の形を保ちます。典型的な流れは商品タグの列を貼り、既定のカンマ+スペースのまま結合テキストを店舗フィードへコピーします。別の流れはseparatorを縦棒やセミコロンにして旧インポータに合わせます。
追加の整形が必要なら後段でトリムや並べ替えと組み合わせてください。ただし区切りリストの検索が段落の折り返し解除と混ざらないよう、このページは独立させてください。
活用例
フィードとクエリ向けにタグやSKUを畳む
商品タグや倉庫SKUの山を、店舗フィード、URL引数、取り込みひな形向けの区切りセル1つに結合します。
設定とSQL IN句向けのインラインリストを作る
貼り付けた識別子の列を、設定ファイルやクエリが追加編集なしで使える縦棒・セミコロン・カンマのリストに変換します。
よくある質問
このツールの既定の区切りは何ですか?
カンマのあとにスペースです。separatorを任意の文字列に上書きできます。カンマのみ、縦棒、セミコロン、タブ、空ならのりなしの硬結合です。
行を結合するとき空行は除きますか?
連続する区切りの間に空トークンを残すならfalseにしてください。
改行削除とは何が違いますか?
改行削除は各改行をスペースに置き換えて段落をほどきます。区切り文字での行結合は各行をリスト項目として扱い、選んだ区切りでつなぎます。
どの行末を認識しますか?
WindowsのCRLF(1区切り)、UnixのLF、クラシックMacのCR、Unicode next-line、行区切り、段落区切りです。結合前に各行をトリムします。
各行の前後にある空白は取り除かれますか?
はい、つなぐ前に各行の前後の空白を取り除くので、貼り付けた列に紛れ込んだ空白が結果に残りません。行の途中にある空白はそのまま保たれます。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/str/join-lines \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"apple\nbanana\ncherry"}'const res = await fetch("https://api.kit.forhosting.com/str/join-lines", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "apple\nbanana\ncherry"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/str/join-lines",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "apple\nbanana\ncherry"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/str/join-lines", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"apple\\nbanana\\ncherry"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"apple\nbanana\ncherry"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/str/join-lines", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"text": "apple\nbanana\ncherry"
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "str.join_lines",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
制限
max_chars | 100000 |
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
空入力はinvalid_inputで拒否します。成功したAPI呼び出しは1件あたり$0.002です。
区切り文字で行を結合する仕組み
エンジンはまず必須のtextと、任意のseparatorおよびskip_emptyを読みます。既定のskip_emptyがtrueのときは、空行や空白のみの行を結合前に捨てるので、隙間のあるリストはりんご, バナナ, さくらんぼになり、りんご, , バナナにはなりません。skip_emptyがfalseのときは空トークンが残り、JavaScriptのArray.joinと同じ契約です。ロケールも乱数シャッフルも時計もなく、同じバイトは常に同じJSONを生みます。
入力契約、応答の形、空入力の拒否
空の区切りは合法で、断片の間に文字を入れずに硬く結合します。文書化された上限を超える極端に長い区切りは検証で失敗し、1件の要求がWorkerメモリを膨らませないようにします。改行のない1行の貼り付けはその行を変えずに返し、countは1です。必須の文字列フィールドtextに、平らにしたい空でない複数行サンプルを入れたJSON本体を送ってください。フォーム生成器や古いクライアントが使うinput、value、s、content、body、linesの別名も受け付けます。textの欠落、非文字列、長さゼロの文字列はinvalid_inputを起こしフィールド名を示します。これらの失敗は前払いAPIでは課金されません。任意のseparatorの既定はカンマとスペースで、別名sep、delim、delimiter、joiner、glueも同じです。任意のskip_emptyは既定trueの真偽値で、別名skip_blanks、drop_empty、ignore_emptyを受け、文字列のtrue、false、1、0は期待どおりに変換されます。成功時の応答は、コピーしやすい結合1行のtext、前後表示用に入力をエコーするoriginal、既定適用後に実際に使ったのりとしてのseparator、結合した個数のcount、空行を除く前に分割が生んだ区間数のline_count、実効フラグのskip_empty、下流が形を嗅がずに分岐できるよう常にjoin_linesであるmethodを含みます。末尾改行はskip_emptyがtrueならぶら下がる区切りを付けません。継続的インテグレーションでこれらのフィールドを固定し、将来のリファクタがCRLFの扱いや既定のカンマ+スペースのりを静かに変えないようにしてください。
区切り文字で行を結合するツールが役立つ場面
パイプライン、CMSプラグイン、モバイルクライアントが同じ契約を残高のもとで必要とするときは、前払いKIT APIを使い、成功1件あたり$0.002です。第三の流れは、元列の空きを区切りの間の空トークンとして残すためskip_emptyをfalseにします。
連携の活用例
氏名やメールの列を1つの欄にまとめる
住所や表示名の縦リストを貼り付け、カンマ区切りの1行をBCC欄、CRMフィールド、招待フォームへコピーします。
技術的な質問
区切り文字で行を結合する料金はいくらですか。
ブラウザのツールは無料で端末上で動きます。API要求は成功1件あたり$0.002の前払いKIT残高を使い、不正入力は課金されません。