ミニイクの調剤指示をコピペ → 薬剤ごとにA5で自動印刷

ver. 2.14.2 更新日 2026-10-05 / 横浜ゆめが丘院 / 編集機能付き

病院情報

ミニイクからコピペ

📖 このツールの解析ルール詳細

クリックで開閉(はじめての方・ミニイク仕様変更時の改修ポイントもここに記載)

📥 入力データの仕様(ミニイクの調剤画面コピペ)

  • システム表示文言は自動除外:即時印刷 調剤待ち 調剤待ち一覧 会計待ち 会計待ち一覧 サーカス動物病院 カルテを編集 過去のカルテ 調剤完了 処方箋印刷 閉じる 指名なし はパース対象外
  • 正規表現で自動除外する形式:時刻 HH:MM/経過時間 X時間Y分 X分/電話番号 XXXX-XXX(X)/英大文字+数字コード PC10 AB123/単独ハイフン -
  • 処方対象は「ちゃん」行で確定:先頭から1番目の「ちゃん」で終わる行を処方対象として認識
  • 同名ペットの選択ダイアログ:同じペット名で 異なるカルテ番号 が複数見つかった場合、自動的にダイアログを表示してどの患者か選択させる(誤投薬防止)

🔍 患者情報の抽出ルール

  • ペット名:「ちゃん」で終わる25文字未満の行(例:ポアロ ちゃん)
  • 飼い主名:ペット名行の1つ前 + 自動付与の「様」
  • カルテ番号:ペット名行の2つ前
  • 担当医:「ちゃん」抜きのペット名の直後の行。以下のいずれかに該当する場合は担当医として採用しない(誤記載防止):
    • 指名なし / 単独ハイフン
    • 「ちゃん」で終わる行(ペット名)
    • ミニイク状態ラベル(調剤待ち 会計待ち 会計済み 診察中 診察待ち 診察済み 予約確定 予約待ち)
    • PCコード(PC10 等)
    • 時刻 HH:MM / カルテ番号 / 経過時間(X時間 X分 X秒)

💊 薬情報のグルーピング

  • 薬情報ゾーンの開始:「○○ ちゃん」行を検出した時点で開始
  • 患者プロフィール(犬種・年齢・性別など)のスキップ:「診断名:」または「診察内容:」または「薬種別ラベル」のいずれかが来るまで全行スキップ
  • 薬種別ラベル(カテゴリーバナー用):内服薬 外用薬 注射薬 点眼薬 点耳薬 サプリメント その他 予防薬 麻酔薬 漢方薬 検査薬 消毒薬
  • 1セットの構成:種別行と薬名行はどちらが先でもOK。以下の2パターン両対応:
    • パターンA:薬名 → 種別 → <合計X>
    • パターンB:種別 → 薬名 → <合計X>
    種別が先に来た場合は「pendingType」として次の薬名に自動付与される。薬名末尾にインライン種別(アポキル錠 内服薬 のような形)があればそれを優先。
  • 同じ薬の①②も別ページ:投薬回数や用法が違えば アポキル錠① アポキル錠② を個別の処方箋として発行
  • 薬名重複判定:薬名+用法 の組合せでユニーク化(完全重複のみ除外)
  • 【】接頭辞の改行:薬名の 【○○○○○○】 内が6文字以上の場合、薬名は2行に折り返し
  • 院内使用薬は処方箋スキップ:薬名に 院内使用 が含まれる薬剤(例:ネプトラ(院内使用))は飼い主への持ち帰り対象外として処方箋を発行しない

📐 用法欄のフォーマット

  • 頻度パターン抽出:N日M回(1日1回 2日1回 3日2回等)を頻度として認識
  • 週X日服用パターン:7日X回 は「1日1回 週X日服用」に自動変換、日数は (M回分) または <合計Y> から算出
  • 1回量(line2):頻度の前にあるトークン(1錠 3g等)を「1回 XX」として2行目に表示
  • 時点・条件(line1):頻度の後ろにあるトークン(必要なとき 食前 食後等)を頻度の隣に表示。X回 単体は除去
  • 食事タイミングは用法欄:食前 食後 食間など「食」を含む語は備考に行かず用法に残る
  • 調剤方法は記載しない:そのまま 分包 分割 脱カプセル その他 は処方箋に出力されません(薬剤師向けの調剤指示なので飼い主には不要)
  • <合計X> は常にバッジ表示:用法欄の右端に「合計 X錠」のグレー角丸バッジで 全処方箋で必ず表示。X日分 の有無や用法内容に関わらず常に出る。用法欄に他のコンテンツが何もない場合(外用薬で <合計1個> 単独のような場合)は、バッジを左寄せ表示
  • 合計数の小数点第1位四捨五入:合計数値が 1.3333333333錠(1/3錠×4日など)のような長い小数になる場合、小数点第1位で四捨五入して 1.3錠 に整える。整数値(1、60等)はそのまま表示(末尾の .0 は付かない)
  • X日分の表示:用法中に X日分 の記載があれば用法欄に表示。X日分 が頻度より前に書かれていても用法欄の末尾に自動移動
  • 回分/N回 → 日分 自動算出(頻度パターンで優先順位を切替):「日分」の定義は 実際に飲む日(投与日)の数。X日分 の記載がなくても自動で算出して用法に表示。優先順位は頻度パターンで分岐:
    • 1日M回(毎日服用):末尾の K回 を優先。電子カルテで「いつでも/必要なとき」を選ぶと処方量フィールドが「日分」→「回」に自動で変わるため、ドクターが入力した日数が末尾の K回 に入る
      例:1日3回 + (1錠x12回分) + 4回 → 4日分(4日×3回/日=12錠 ✓)
    • N日1回(N日おき、N≥2):カッコ内 K回分 を優先。N日1回 のカッコ内 K回分 は投与日数を直接示している
      例:2日1回 + (0.25錠x18回分) + 36回 → 18日分(18投与×0.25錠=4.5錠 ✓)

📝 備考欄に入るルール

  • ★以降のテキスト:<合計X> 行に ★ がある場合、★以降は全部備考
  • 調剤優先順「先 / 後 / 中」:用法末尾にあるこれらは ★がなくても 備考に自動転記(「食前」「食後」は 食 が前にあるので誤判定しない)
  • X日分の後ろの追加情報:X日分 の後にテキストがあれば備考に分離
  • <合計X> の後ろの日本語文:<合計X> の後ろに ( や数字ではなく 日本語(漢字・かな)で始まるテキストがある場合は備考に分離(例:足の裏に1日2回塗布してください)。(1錠x60回分) ... のような用法の続きは備考に行かない

🎨 レイアウト・印刷ルール

  • 用紙:A5縦・1薬剤につき1ページ
  • 色:プレビュー・印刷とも自動でモノクロ(grayscale 100%)
  • ページ構成:通し番号(右上)/カテゴリーバナー/ヘッダー(飼い主・ペット名・日付・カルテ番号・担当医)/本文3セクション(薬名・用法・備考)/フッター(病院情報・押印欄2マス・挨拶文)
  • 薬名フォントは自動縮小:枠幅に収まらない場合、16.67px → 7pt まで段階的に縮小
  • イラスト:起動時に logo.png / illust.png をプリロード。イラストの白〜薄灰背景(RGB 235以上)はCanvasで自動透過。ブラウザのセキュリティ制約でCanvas透過が失敗した場合のフォールバックとして mix-blend-mode:multiply も併用(白×何でも=何でも、で枠線を消さない)
  • イラスト位置の固定(ver.2.1で確定):イラストは .rx-page(処方箋ページ)直下に配置し、ページ右下の right:4mm; bottom:40mm; height:40mm で絶対固定。薬名の長短や備考エリアのサイズ変化に関わらず、常に同じ位置に備考枠内に表示される。位置変更時は印刷検証を必ず行うこと
  • 画像必須ファイル:HTMLと同じフォルダに logo.png(病院ロゴ)と illust.png(犬猫イラスト)を配置

🛠 ミニイクの仕様が変わった時の改修ポイント

  • 除外する表示文言が増えた → JS内の SKIP セットに追加
  • 除外する形式が増えた(新しいコード体系など) → JS内の SKIP_RE 配列に正規表現を追加
  • 担当医に誤って入ってしまう文言が出てきた → _isValidVet 関数に除外パターンを追加
  • 新しい薬種別が増えた → JS内の TYPES セットに追加
  • 新しい調剤方法が増えた → parseDosage 内の DISPENSE_METHODS セットに追加
  • 患者情報セクションの区切りラベルが変わった → 「診断名:」「診察内容:」の startsWith 判定を変更
  • 用法の頻度パターンが変わった → parseDosage 関数内の正規表現 /^\d+日\d+回$/ と /^7日\d+回$/
  • 備考に入れる記号が増えた → parseAll 内の tagRe(先|後|中)/ ★ 区切り
  • レイアウト変更 → CSSの .rx-page 〜 .rx-footer 周辺
  • 病院情報の初期値変更 → HTML内 <input id="clinicName"> 等の value
⚠ 改修時の注意:このツールは外部ライブラリなしの単一HTMLです。改修は <script> 内のJSと <style> 内のCSSのみで完結します。サーバー・データベース等の依存はありません。ファイル冒頭の ver. と更新日も忘れずに更新してください。藤沢菖蒲沢院版と当院版でロジックを同期する場合は両方更新すること。
📝 編集モード ON:文字にカーソルを合わせると枠が出ます。