{"id":9585,"date":"2025-10-15T22:50:48","date_gmt":"2025-10-15T13:50:48","guid":{"rendered":"https:\/\/code-plus.jp\/gp\/?page_id=9585"},"modified":"2026-04-28T10:06:08","modified_gmt":"2026-04-28T01:06:08","slug":"list2trees-converter","status":"publish","type":"page","link":"https:\/\/code-plus.jp\/gp\/tools\/list2trees-converter\/","title":{"rendered":"\u30d7\u30e9\u30b9\u8a18\u53f7(+)\u968e\u5c64\u30ea\u30b9\u30c8\u3092 \u2192 \u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u30c4\u30ea\u30fc\u306b\u5909\u63db\u30c4\u30fc\u30eb"},"content":{"rendered":"<!-- \u25bc.page -->\r\n<!-- .mezzala\uff08\u4f59\u767d\u8abf\u6574\uff1apage\u4e0a\uff09 -->\r\n<hr class=\"spacer-mezzala\" \/>\r\n\r\n\r\n\r\n\r\n<hr id=\"ch-TextConverter\" anchor \/>\r\n<div class=\"pg-saracnvtvkaa\">\r\n\r\n  <header class=\"page-header mx-auto\">\r\n    <!-- \u30d1\u30f3\u304f\u305a\u30ea\u30b9\u30c8 --><div><!-- breadcrumb.php -->\n\n<nav class=\"breadcrumb leckermaul mx-auto py-0.5r\">\n  <ul class=\"breadcrumb-wrapper\">\n    <!-- \u30c8\u30c3\u30d7\u30da\u30fc\u30b8\u3078\u306e\u30ea\u30f3\u30af\u3092\u8868\u793a -->\n    <li><a href=\"https:\/\/code-plus.jp\/gp\/\"><i><\/i>\u30c8\u30c3\u30d7<\/a><\/li>\n\n          <!-- \u56fa\u5b9a\u30da\u30fc\u30b8\uff08\u305d\u308c\u4ee5\u5916\uff09\uff1a \u5148\u7956\u30da\u30fc\u30b8\u540d\u3068\u3001\u73fe\u5728\u306e\u30da\u30fc\u30b8\u540d\u3092\u8868\u793a -->\n      <li><a href=\"https:\/\/code-plus.jp\/gp\/tools\/\">TOOLS\uff08\u30c4\u30fc\u30eb\u4e00\u89a7\uff09<\/a><\/li><li class=\"current_page_item\"><a>\u30c4\u30fc\u30eb<\/a><\/li>    <!-- \/\/\/if (is_page()) -->\n\n  <\/ul>\n<\/nav><\/div>\r\n  <\/header><!-- \/\/\/.inheader -->\r\n\r\n\r\n\r\n\r\n  <!-- .section -->\r\n  <section class=\"sect-cnvtVkaA-Intro\" style=\"contain-intrinsic-size:1000px;\">\r\n    <header class=\"section__inheader mx-auto scroll-fadeIn\">\r\n      <div class=\"hgroup-wrapper d-iblock mb-0.5r\">\r\n        <h1 class=\"fz-xxl hdg-page mb-0.25pc\"><span>\u30d7\u30e9\u30b9\u8a18\u53f7(+)\u968e\u5c64\u30ea\u30b9\u30c8\u3092 \u2192 \u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u30c4\u30ea\u30fc\u306b\u5909\u63db\u30c4\u30fc\u30eb<\/span><\/h1>\r\n        <p class=\"page-foreword fz-ss\">+\u8a18\u53f7\u306e\u30ea\u30b9\u30c8\u5f62\u5f0f\u3092\u3001\u30c4\u30ea\u30fc\u69cb\u9020\u306b\u5909\u63db\u3057\u307e\u3059\u3002\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u69cb\u9020\u3084\u30bf\u30b9\u30af\u968e\u5c64\u306e\u53ef\u8996\u5316\u3001Claude\u7b49\u3078\u306e\u8aac\u660e\u7528\u306b\u4fbf\u5229\u3067\u3059\u3002<\/p>\r\n      <\/div><!-- \/\/\/.hgroup -->\r\n\r\n      <a class=\"fl-right badge is-outlined is-gray fz-xs bdrs-0.25r\" href=\"#ch-Explanation\">\r\n        <i class=\"icon mas ma-help\"><\/i>&nbsp;<span>\u4f7f\u3044\u65b9<\/span>\r\n      <\/a>\r\n    <\/header><!-- \/\/\/.inheader -->\r\n  <\/section>\r\n\r\n\r\n  <!-- .section -->\r\n  <hr id=\"ch-Converter\" anchor \/>\r\n  <section class=\"sect-cnvtVkaA-Converter\" style=\"contain-intrinsic-size:1000px;\">\r\n    <div class=\"section__interior fxd-row mx-auto\">\r\n      <figure class=\"section__leftlane\">\r\n        <div class=\"hgroup-wrapper\">\r\n          <h3 class=\"fz-rg hdg-section mb-0.25pc\"><span>\u25bc\u30c6\u30ad\u30b9\u30c8\u3092\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044<\/span><\/h3>\r\n        <\/div><!-- \/\/\/.hgroup -->\r\n\r\n        <div class=\"chest-wrapper relatived\">\r\n          <textarea id=\"encodeArea\" class=\"textarea\" style=\"height:17.5pc;\" placeholder=\"\u3053\u3053\u306b\u30c6\u30ad\u30b9\u30c8\u3092\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044\"><\/textarea>\r\n          <ins id=\"decodedMessage\"><\/ins>\r\n        <\/div><!-- \/\/\/.chest -->\r\n\r\n        <!-- \u30aa\u30d7\u30b7\u30e7\u30f3 -->\r\n        <!-- <div class=\"colgroup w-full mt-1r\"><\/div> -->\r\n\r\n        <div class=\"colgroup w-full mt-1r\">\r\n          <label class=\"label is-outlined fz-sm\"><input type=\"checkbox\" class=\"checkbox\" id=\"convertList2Trees\" checked>+\u8a18\u53f7\u306e\u30ea\u30b9\u30c8\u5f62\u5f0f\u3092 \u2192 \u30c4\u30ea\u30fc\u5f62\u5f0f\u306b\u5909\u63db<\/label>\r\n        <\/div><!-- \/\/\/.colgroup -->\r\n      <\/figure><!-- \/\/\/.leftlane -->\r\n\r\n      <figure class=\"section__centerlane\">\r\n        <aside class=\"sticky-sidebar fxd-column pc-center\" style=\"height:23.5rem;\">\r\n          <a class=\"button is-solided is-primary\" href=\"#ch-Converter\" onclick=\"encodeText()\"><span>\u5909\u63db&nbsp;\u00bb<\/span><\/a>\r\n          <a class=\"button is-solided is-primary mt-2r\" href=\"#ch-Converter\" onclick=\"decodeText()\"><span>\u00ab&nbsp;\u5909\u63db<\/span><\/a>\r\n        <\/aside>\r\n      <\/figure><!-- \/\/\/.centerlane -->\r\n\r\n\r\n      <figure class=\"section__rightlane\">\r\n        <div class=\"chest-wrapper relatived\">\r\n          <h3 class=\"fz-rg hdg-section mb-0.25pc\"><span>\u25bc\u5909\u63db\u5f8c\u306e\u30c6\u30ad\u30b9\u30c8<\/span><\/h3>\r\n          <textarea class=\"textarea\" id=\"decodeArea\" style=\"height:17.5pc;\" placeholder=\"\u3053\u3053\u306b\u5909\u63db\u5f8c\u306e\u30c6\u30ad\u30b9\u30c8\u304c\u8868\u793a\u3055\u308c\u307e\u3059\"><\/textarea>\r\n          <ins id=\"encodedMessage\"><\/ins>\r\n        <\/div><!-- \/\/\/.chest -->\r\n\r\n        <div class=\"colgroup w-full mt-1r\">\r\n          <!-- \u30aa\u30d7\u30b7\u30e7\u30f3 -->\r\n        <\/div><!-- \/\/\/.colgroup -->\r\n      <\/figure><!-- \/\/\/.rightlane -->\r\n    <\/div><!-- \/\/\/.interior.fxd-row -->\r\n  <\/section>\r\n\r\n\r\n  <!-- .section -->\r\n  <hr id=\"ch-Explanation\" anchor \/>\r\n  <section class=\"sect-cnvtVkaA-Explanation pt-3r\" style=\"contain-intrinsic-size:1000px;\">\r\n    <div class=\"section__interior mx-auto scroll-fadeIn\">\r\n      <div class=\"box is-broad is-solided c-text\">\r\n        <h4 class=\"hdg-explanation fz-md mb-0.25pc\">\u4f7f\u3044\u65b9<\/h4>\r\n\r\n        <h5 class=\"hdg-subexplanation fz-rg mb-0.25pc mt-2r\">\ud83d\udca1 \u4e3b\u306a\u6a5f\u80fd<\/h5>\r\n        <ul class=\"fz-ss mb-1r\">\r\n          <li><b class=\"bold\">+\u8a18\u53f7\u3067\u968e\u5c64\u8868\u73fe<\/b>\uff1a<code>+<\/code>\u306e\u500b\u6570\uff081\u301c6\u500b\uff09\u3067\u968e\u5c64\u30ec\u30d9\u30eb\u3092\u6307\u5b9a\u3002\u30a4\u30f3\u30c7\u30f3\u30c8\u4e0d\u8981\u3067\u76f4\u611f\u7684<\/li>\r\n          <li><b class=\"bold\">\u81ea\u52d5\u30c4\u30ea\u30fc\u5909\u63db<\/b>\uff1a\u968e\u5c64\u30ea\u30b9\u30c8\u3092\u8996\u899a\u7684\u306a\u30c4\u30ea\u30fc\u69cb\u9020\uff08\u251c\u2500\u2500 \u2514\u2500\u2500\uff09\u306b\u81ea\u52d5\u5909\u63db<\/li>\r\n          <li><b class=\"bold\">Markdown\u5909\u63db\u5bfe\u5fdc<\/b>\uff1a\u4e00\u822c\u7684\u306aMarkdown\u8a18\u6cd5\u3068\u306e\u76f8\u4e92\u5909\u63db\u304c\u53ef\u80fd<\/li>\r\n          <li><b class=\"bold\">HTML\u51fa\u529b<\/b>\uff1aWeb\u8868\u793a\u7528\u306eHTML\u5f62\u5f0f\u306b\u3082\u5909\u63db\u53ef\u80fd<\/li>\r\n        <\/ul>\r\n\r\n        <h5 class=\"hdg-subexplanation fz-rg mb-0.25pc mt-2r\">\ud83d\udcdd \u8a18\u6cd5\u30eb\u30fc\u30eb<\/h5>\r\n        <pre><code class=\"language-\">+ \u7b2c1\u968e\u5c64\u9805\u76ee\r\n    ++ \u7b2c2\u968e\u5c64\u9805\u76ee\r\n      +++ \u7b2c3\u968e\u5c64\u9805\u76ee\r\n          ++++ \u7b2c4\u968e\u5c64\u9805\u76ee\r\n<\/code><\/pre>\r\n        <p>\u2193 \u5909\u63db\u5f8c<\/p>\r\n        <pre><code class=\"language-\">\u7b2c1\u968e\u5c64\u9805\u76ee\r\n    \u251c\u2500\u2500 \u7b2c2\u968e\u5c64\u9805\u76ee\r\n    \u2502   \u2514\u2500\u2500 \u7b2c3\u968e\u5c64\u9805\u76ee\r\n    \u2502       \u2514\u2500\u2500 \u7b2c4\u968e\u5c64\u9805\u76ee\r\n<\/code><\/pre>\r\n\r\n        <h5 class=\"hdg-subexplanation fz-rg mb-0.25pc mt-2r\">\ud83c\udfaf \u6d3b\u7528\u4f8b<\/h5>\r\n        <ul class=\"fz-ss mb-1r\">\r\n          <li><b class=\"bold\">\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u69cb\u9020\u6574\u7406<\/b>\uff1a\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u69cb\u9020\u3084\u30e2\u30b8\u30e5\u30fc\u30eb\u968e\u5c64\u306e\u53ef\u8996\u5316<\/li>\r\n          <li><b class=\"bold\">\u30bf\u30b9\u30af\u7ba1\u7406<\/b>\uff1a\u968e\u5c64\u7684\u306a\u30bf\u30b9\u30af\u30ea\u30b9\u30c8\u306e\u4f5c\u6210\u3068\u5171\u6709<\/li>\r\n          <li><b class=\"bold\">\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u4f5c\u6210<\/b>\uff1a\u6280\u8853\u6587\u66f8\u3084\u8a2d\u8a08\u66f8\u3067\u306e\u69cb\u9020\u56f3\u4f5c\u6210<\/li>\r\n          <li><b class=\"bold\">\u30a2\u30a6\u30c8\u30e9\u30a4\u30f3\u4f5c\u6210<\/b>\uff1a\u6587\u7ae0\u69cb\u6210\u3084\u4f01\u753b\u66f8\u306e\u9aa8\u683c\u4f5c\u308a<\/li>\r\n          <li><b class=\"bold\">\u30de\u30a4\u30f3\u30c9\u30de\u30c3\u30d7\u4ee3\u66ff<\/b>\uff1a\u30b7\u30f3\u30d7\u30eb\u306a\u968e\u5c64\u601d\u8003\u306e\u6574\u7406<\/li>\r\n\r\n        <\/ul>\r\n\r\n        <h5 class=\"hdg-subexplanation fz-rg mb-0.25pc mt-2r\">\u2699\ufe0f \u4fbf\u5229\u306a\u30aa\u30d7\u30b7\u30e7\u30f3<\/h5>\r\n        <ul class=\"fz-ss\">\r\n          <li><b class=\"bold\">\u30a4\u30f3\u30c7\u30f3\u30c8\u4e0d\u8981<\/b>\uff1a+\u306e\u500b\u6570\u3060\u3051\u3067\u968e\u5c64\u7ba1\u7406\u3001\u30bf\u30d6\u3084\u30b9\u30da\u30fc\u30b9\u306e\u8abf\u6574\u4e0d\u8981<\/li>\r\n          <li><b class=\"bold\">\u6700\u59276\u968e\u5c64\u5bfe\u5fdc<\/b>\uff1a\u8907\u96d1\u306a\u69cb\u9020\u3082\u8868\u73fe\u53ef\u80fd<\/li>\r\n          <li><b class=\"bold\">\u53cc\u65b9\u5411\u5909\u63db<\/b>\uff1a\u30c4\u30ea\u30fc\u69cb\u9020\u304b\u3089\u30ea\u30b9\u30c8\u5f62\u5f0f\u3078\u306e\u9006\u5909\u63db\u3082\u53ef\u80fd<\/li>\r\n          <li><b class=\"bold\">\u5373\u6642\u30d7\u30ec\u30d3\u30e5\u30fc<\/b>\uff1a\u5165\u529b\u3057\u306a\u304c\u3089\u30ea\u30a2\u30eb\u30bf\u30a4\u30e0\u3067\u30c4\u30ea\u30fc\u8868\u793a\u3092\u78ba\u8a8d<\/li>\r\n        <\/ul>\r\n      <\/div><!-- \/\/\/.box -->\r\n    <\/div><!-- \/\/\/.interior -->\r\n  <\/section><!-- \/\/\/.section -->\r\n\r\n\r\n  <!-- .department -->\r\n  <hr id=\"ch-Relation\" anchor \/>\r\n  <section class=\"sect-cnvtVkaA-Relation pt-3r\" style=\"contain-intrinsic-size:1000px;\">\r\n    <div class=\"section__interior mx-auto scroll-fadeIn\">\r\n      <div class=\"hgroup-wrapper mb-0.5pc\">\r\n        <h5 class=\"hdg-relation fz-rg\"><span>\u95a2\u9023\u30c4\u30fc\u30eb<\/span><\/h5>\r\n      <\/div><!-- \/\/\/.hgroup -->\r\n\r\n      <ul class=\"shelf-wrapper_pc shelfA\" data-cols_pc=\"2\">\r\n        <li class=\"slide\">\r\n          <a href=\"https:\/\/code-plus.jp\/gp\/dirtree-generator\/\" class=\"linkbox\">\r\n            <h4 class=\"linkbox-title fz-md\">\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u30c4\u30ea\u30fc\u751f\u6210\u30c4\u30fc\u30eb -\u30d5\u30a9\u30eb\u30c0\u69cb\u9020\u3092\u8996\u899a\u5316-<\/h4>\r\n            <picture class=\"linkbox-thumbnail\">\r\n              <img decoding=\"async\" width=\"300\" height=\"200\" src=\"https:\/\/code-plus.jp\/gp\/wp-content\/uploads\/ece8d458f0f565c428d1dab770f6a02c.jpg?ver=20260428100608\" alt=\"DirTree Generator\uff08\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u30c4\u30ea\u30fc\u751f\u6210\u30c4\u30fc\u30eb\uff09 -\u30d5\u30a9\u30eb\u30c0\u69cb\u9020\u3092\u8996\u899a\u5316-\" loading=\"lazy\" \/>\r\n            <\/picture>\r\n            <span class=\"linkbox-excerpt\">\u30ed\u30fc\u30ab\u30eb\u30d5\u30a9\u30eb\u30c0\u3092\u3059\u308b\u3060\u3051\u3067\u9078\u629e\u3059\u308b\u3060\u3051\u3067\u3001\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u69cb\u9020\u3092\u8996\u899a\u7684\u306a\u30c4\u30ea\u30fc\u5f62\u5f0f\u3067\u81ea\u52d5\u751f\u6210\u3002README\u3084\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u4f5c\u6210\u306b\u6700\u9069\u3002\u96a0\u3057\u30d5\u30a1\u30a4\u30eb\u8868\u793a\u3001\u9664\u5916\u8a2d\u5b9a\u6a5f\u80fd\u4ed8\u304d\u3002\r\n            <\/span>\r\n          <\/a>\r\n        <\/li>\r\n        <li class=\"slide\">\r\n          <a href=\"https:\/\/code-plus.jp\/gp\/linebounds-converter\/\" class=\"linkbox\">\r\n            <h4 class=\"linkbox-title fz-md\">\u30d1\u30a4\u30d7\u8a18\u53f7(|)\u968e\u5c64\u30ea\u30b9\u30c8\u3092 \u2192 \u7f6b\u7dda\u56f2\u307f\u306b\u5909\u63db\u30c4\u30fc\u30eb<\/h4>\r\n            <picture class=\"linkbox-thumbnail\">\r\n              <img decoding=\"async\" width=\"300\" height=\"200\" src=\"https:\/\/code-plus.jp\/gp\/wp-content\/uploads\/8e7f757b11c87f2190f043ba1865c45f.jpg?ver=20260428100608\" alt=\"\u30d1\u30a4\u30d7\u8a18\u53f7(|)\u968e\u5c64\u30ea\u30b9\u30c8\u3092 \u2192 \u7f6b\u7dda\u56f2\u307f\u306b\u5909\u63db\u30c4\u30fc\u30eb\" loading=\"lazy\" \/>\r\n            <\/picture>\r\n            <span class=\"linkbox-excerpt\">\u30d1\u30a4\u30d7(|)\u8a18\u53f7\u306e\u30ea\u30b9\u30c8\u5f62\u5f0f\u3092\u3001\u7f6b\u7dda\u3067\u56f2\u3093\u3060\u69cb\u9020\u306b\u5909\u63db\u3057\u307e\u3059\u3002Claude\u7b49AI\u3078\u306eUI\u8aac\u660e\u7528\u306a\u3069\u306b\u3002\u30ad\u30fc\u30dc\u30fc\u30c9\u5f62\u5f0f\u304b\u3089\u306e\u7f6b\u7dda\u7d20\u7247\u5165\u529b\u3082\u53ef\u80fd\u3067\u3059\u3002\r\n            <\/span>\r\n          <\/a>\r\n        <\/li>\r\n      <\/ul><!-- \/\/\/.shelf -->\r\n    <\/div><!-- \/\/\/.interior -->\r\n  <\/section><!-- \/\/\/.section -->\r\n\r\n\r\n  <!-- .department -->\r\n  <hr id=\"ch-Relation2\" anchor \/>\r\n  <section class=\"sect-cnvtVkaA-Relation2 pt-3r\" style=\"contain-intrinsic-size:1000px;\">\r\n    <div class=\"section__interior mx-auto scroll-fadeIn\">\r\n      <div class=\"hgroup-wrapper mb-0.5pc\">\r\n        <h5 class=\"hdg-relation fz-rg\"><span>\u30c4\u30fc\u30eb\u4e00\u89a7<\/span><\/h5>\r\n      <\/div><!-- \/\/\/.hgroup -->\r\n\r\n      <div class=\"pt-cv-wrapper\"><div class=\"pt-cv-view pt-cv-grid pt-cv-colsys\" id=\"pt-cv-view-2f67d27xgo\"><div data-id=\"pt-cv-page-1\" class=\"pt-cv-page\" data-cvc=\"3\"><div class=\"col-md-4 col-sm-6 col-xs-12 pt-cv-content-item pt-cv-2-col\"  data-pid=\"11549\"><div class='pt-cv-ifield'><h5 class=\"pt-cv-title\"><a href=\"https:\/\/code-plus.jp\/gp\/tools\/responsive-clamp-calculator\/\" class=\"_self\" target=\"_self\" >\u30ec\u30b9\u30dd\u30f3\u30b7\u30d6\u306a\u30d5\u30a9\u30f3\u30c8\u30b5\u30a4\u30ba\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u30fc - \u8907\u6570\u30d7\u30ed\u30d1\u30c6\u30a3\/\u30b9\u30de\u30db\u306e\u65b9\u304c\u6587\u5b57\u30b5\u30a4\u30ba\u304c\u5927\u304d\u3044\u5834\u5408\u306b\u3082\u5bfe\u5fdc<\/a><\/h5><\/div><\/div>\n<div class=\"col-md-4 col-sm-6 col-xs-12 pt-cv-content-item pt-cv-2-col\"  data-pid=\"11746\"><div class='pt-cv-ifield'><h5 class=\"pt-cv-title\"><a href=\"https:\/\/code-plus.jp\/gp\/tools\/specificity-calculator\/\" class=\"_self\" target=\"_self\" >CSS\u30bb\u30ec\u30af\u30bf \u8a73\u7d30\u5ea6\u8a08\u7b97\u30c4\u30fc\u30eb<\/a><\/h5><\/div><\/div>\n<div class=\"col-md-4 col-sm-6 col-xs-12 pt-cv-content-item pt-cv-2-col\"  data-pid=\"11509\"><div class='pt-cv-ifield'><h5 class=\"pt-cv-title\"><a href=\"https:\/\/code-plus.jp\/gp\/tools\/textchar-encoder\/\" class=\"_self\" target=\"_self\" >\u6587\u5b57\u30b3\u30fc\u30c9\u5909\u63db\u30c4\u30fc\u30eb | Shift_JIS \/ EUC-JP \u306e\u30c6\u30ad\u30b9\u30c8\u30d5\u30a1\u30a4\u30eb\u3092 UTF-8 \u306b\u4e00\u62ec\u5909\u63db<\/a><\/h5><\/div><\/div>\n<div class=\"col-md-4 col-sm-6 col-xs-12 pt-cv-content-item pt-cv-2-col\"  data-pid=\"10981\"><div class='pt-cv-ifield'><h5 class=\"pt-cv-title\"><a href=\"https:\/\/code-plus.jp\/gp\/tools\/colorcode-converter\/\" class=\"_self\" target=\"_self\" >\u30ab\u30e9\u30fc\u30b3\u30fc\u30c9\u4e00\u62ec\u5909\u63db\u30c4\u30fc\u30eb | RGBA, HSL\u21c4HEX\u5909\u63db\u30b5\u30a4\u30c8<\/a><\/h5><\/div><\/div>\n<div class=\"col-md-4 col-sm-6 col-xs-12 pt-cv-content-item pt-cv-2-col\"  data-pid=\"5957\"><div class='pt-cv-ifield'><h5 class=\"pt-cv-title\"><a href=\"https:\/\/code-plus.jp\/gp\/tools\/markdown-converter\/\" class=\"_self\" target=\"_self\" >Markdown\u8a18\u6cd5\u21c4HTML \u30aa\u30f3\u30e9\u30a4\u30f3\u5909\u63db\u30c4\u30fc\u30eb | \u53cc\u65b9\u5411\u5909\u63db\u30b5\u30a4\u30c8<\/a><\/h5><\/div><\/div>\n<div class=\"col-md-4 col-sm-6 col-xs-12 pt-cv-content-item pt-cv-2-col\"  data-pid=\"9062\"><div class='pt-cv-ifield'><h5 class=\"pt-cv-title\"><a href=\"https:\/\/code-plus.jp\/gp\/tools\/dirtree-generator\/\" class=\"_self\" target=\"_self\" >DirTree Generator\uff08\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u30c4\u30ea\u30fc\u751f\u6210\u30c4\u30fc\u30eb\uff09 -\u30d5\u30a9\u30eb\u30c0\u69cb\u9020\u3092\u8996\u899a\u5316-<\/a><\/h5><\/div><\/div>\n<div class=\"col-md-4 col-sm-6 col-xs-12 pt-cv-content-item pt-cv-2-col\"  data-pid=\"6032\"><div class='pt-cv-ifield'><h5 class=\"pt-cv-title\"><a href=\"https:\/\/code-plus.jp\/gp\/tools\/eyecatch-generator\/\" class=\"_self\" target=\"_self\" >\u30bf\u30a4\u30c8\u30eb\u4ed8\u304d\u306e\u30a2\u30a4\u30ad\u30e3\u30c3\u30c1\u753b\u50cf\u751f\u6210\u30c4\u30fc\u30eb | \u30aa\u30f3\u30e9\u30a4\u30f3\u4e0a\u3067\u6587\u5b57\u3092\u753b\u50cf\u306b\u5909\u63db<\/a><\/h5><\/div><\/div>\n<div class=\"col-md-4 col-sm-6 col-xs-12 pt-cv-content-item pt-cv-2-col\"  data-pid=\"10460\"><div class='pt-cv-ifield'><h5 class=\"pt-cv-title\"><a href=\"https:\/\/code-plus.jp\/gp\/tools\/markitdown-converter\/\" class=\"_self\" target=\"_self\" >pptx\/docx\/pdf\u2192Markdown \u5909\u63db\u30c4\u30fc\u30eb<\/a><\/h5><\/div><\/div>\n<div class=\"col-md-4 col-sm-6 col-xs-12 pt-cv-content-item pt-cv-2-col\"  data-pid=\"6384\"><div class='pt-cv-ifield'><h5 class=\"pt-cv-title\"><a href=\"https:\/\/code-plus.jp\/gp\/tools\/breaks-converter\/\" class=\"_self\" target=\"_self\" >\u6539\u884c\u30fb\u30bf\u30d6\u5909\u63db\u30c4\u30fc\u30eb - &amp;#13;&amp;#10; &lt;br&gt; \\A HTML\u30a8\u30f3\u30c6\u30a3\u30c6\u30a3\u30fbbr\u30bf\u30b0\u4e00\u62ec\u5909\u63db<\/a><\/h5><\/div><\/div>\n<div class=\"col-md-4 col-sm-6 col-xs-12 pt-cv-content-item pt-cv-2-col\"  data-pid=\"6207\"><div class='pt-cv-ifield'><h5 class=\"pt-cv-title\"><a href=\"https:\/\/code-plus.jp\/gp\/tools\/text-replacer-rem-calc\/\" class=\"_self\" target=\"_self\" >\u8907\u6570\u30eb\u30fc\u30eb\u304b\u3089\u30c6\u30ad\u30b9\u30c8\u4e00\u62ec\u7f6e\u63db\u30c4\u30fc\u30eb\u3010rem \u2194 calc\u3011<\/a><\/h5><\/div><\/div>\n<div class=\"col-md-4 col-sm-6 col-xs-12 pt-cv-content-item pt-cv-2-col\"  data-pid=\"10814\"><div class='pt-cv-ifield'><h5 class=\"pt-cv-title\"><a href=\"https:\/\/code-plus.jp\/gp\/tools\/text-replacer-em-rem\/\" class=\"_self\" target=\"_self\" >\u8907\u6570\u30eb\u30fc\u30eb\u304b\u3089\u30c6\u30ad\u30b9\u30c8\u4e00\u62ec\u7f6e\u63db\u30c4\u30fc\u30eb\u3010em \u2194 rem\u3011<\/a><\/h5><\/div><\/div>\n<div class=\"col-md-4 col-sm-6 col-xs-12 pt-cv-content-item pt-cv-2-col\"  data-pid=\"6140\"><div class='pt-cv-ifield'><h5 class=\"pt-cv-title\"><a href=\"https:\/\/code-plus.jp\/gp\/tools\/text-replacer-pc-rem\/\" class=\"_self\" target=\"_self\" >\u8907\u6570\u30eb\u30fc\u30eb\u304b\u3089\u30c6\u30ad\u30b9\u30c8\u4e00\u62ec\u7f6e\u63db\u30c4\u30fc\u30eb\u3010pc \u2194 rem\u3011<\/a><\/h5><\/div><\/div>\n<div class=\"col-md-4 col-sm-6 col-xs-12 pt-cv-content-item pt-cv-2-col\"  data-pid=\"7055\"><div class='pt-cv-ifield'><h5 class=\"pt-cv-title\"><a href=\"https:\/\/code-plus.jp\/gp\/tools\/text-replacer-px-em\/\" class=\"_self\" target=\"_self\" >\u8907\u6570\u30eb\u30fc\u30eb\u304b\u3089\u30c6\u30ad\u30b9\u30c8\u4e00\u62ec\u7f6e\u63db\u30c4\u30fc\u30eb\u3010px \u2194 em\u3011<\/a><\/h5><\/div><\/div>\n<div class=\"col-md-4 col-sm-6 col-xs-12 pt-cv-content-item pt-cv-2-col\"  data-pid=\"6124\"><div class='pt-cv-ifield'><h5 class=\"pt-cv-title\"><a href=\"https:\/\/code-plus.jp\/gp\/tools\/text-replacer-px-rem\/\" class=\"_self\" target=\"_self\" >\u8907\u6570\u30eb\u30fc\u30eb\u304b\u3089\u30c6\u30ad\u30b9\u30c8\u4e00\u62ec\u7f6e\u63db\u30c4\u30fc\u30eb\u3010px \u2194 rem\u3011<\/a><\/h5><\/div><\/div>\n<div class=\"col-md-4 col-sm-6 col-xs-12 pt-cv-content-item pt-cv-2-col\"  data-pid=\"10161\"><div class='pt-cv-ifield'><h5 class=\"pt-cv-title\"><a href=\"https:\/\/code-plus.jp\/gp\/tools\/linebounds-converter\/\" class=\"_self\" target=\"_self\" >\u30d1\u30a4\u30d7\u8a18\u53f7(|)\u968e\u5c64\u30ea\u30b9\u30c8\u3092 \u2192 \u7f6b\u7dda\u56f2\u307f\u306b\u5909\u63db\u30c4\u30fc\u30eb<\/a><\/h5><\/div><\/div>\n<div class=\"col-md-4 col-sm-6 col-xs-12 pt-cv-content-item pt-cv-2-col\"  data-pid=\"6964\"><div class='pt-cv-ifield'><h5 class=\"pt-cv-title\"><a href=\"https:\/\/code-plus.jp\/gp\/tools\/table-converter\/\" class=\"_self\" target=\"_self\" >&nbsp;|\uff08\u30d1\u30a4\u30d7\uff09\u3092Table\u30bf\u30b0\u306b\u5909\u63db\u30c4\u30fc\u30eb | Markdown\u8868\u5f62\u5f0f\u2192HTML\u81ea\u52d5\u5909\u63db<\/a><\/h5><\/div><\/div>\n<div class=\"col-md-4 col-sm-6 col-xs-12 pt-cv-content-item pt-cv-2-col\"  data-pid=\"7062\"><div class='pt-cv-ifield'><h5 class=\"pt-cv-title\"><a href=\"https:\/\/code-plus.jp\/gp\/tools\/deline-converter\/\" class=\"_self\" target=\"_self\" >&nbsp;|\uff08\u30d1\u30a4\u30d7\uff09\u3092Dl\u30bf\u30b0\u306b\u5909\u63db\u30c4\u30fc\u30eb - \u5b9a\u7fa9\u30ea\u30b9\u30c8\u30fb\u7528\u8a9e\u96c6HTML\u81ea\u52d5\u751f\u6210<\/a><\/h5><\/div><\/div>\n<div class=\"col-md-4 col-sm-6 col-xs-12 pt-cv-content-item pt-cv-2-col\"  data-pid=\"10028\"><div class='pt-cv-ifield'><h5 class=\"pt-cv-title\"><a href=\"https:\/\/code-plus.jp\/gp\/tools\/font-metrics-analyzer\/\" class=\"_self\" target=\"_self\" >\u30d5\u30a9\u30f3\u30c8\u30e1\u30c8\u30ea\u30af\u30b9\u89e3\u6790\u30c4\u30fc\u30eb - 2\u3064\u306e\u30d5\u30a9\u30f3\u30c8\u3092\u6bd4\u8f03\u3057\u3066\u3001size-adjust\u306e\u6700\u9069\u5024\u3092\u8a08\u7b97<\/a><\/h5><\/div><\/div>\n<div class=\"col-md-4 col-sm-6 col-xs-12 pt-cv-content-item pt-cv-2-col\"  data-pid=\"8636\"><div class='pt-cv-ifield'><h5 class=\"pt-cv-title\"><a href=\"https:\/\/code-plus.jp\/gp\/tools\/imgtag-converter\/\" class=\"_self\" target=\"_self\" >\u753b\u50cf\u2192img\u30bf\u30b0\u5909\u63db\u30c4\u30fc\u30eb | \u753b\u50cf\u30b5\u30a4\u30ba\u30fb\u30a2\u30b9\u30da\u30af\u30c8\u6bd4\u81ea\u52d5\u8a08\u7b97\u30b5\u30a4\u30c8<\/a><\/h5><\/div><\/div>\n<div class=\"col-md-4 col-sm-6 col-xs-12 pt-cv-content-item pt-cv-2-col\"  data-pid=\"9036\"><div class='pt-cv-ifield'><h5 class=\"pt-cv-title\"><a href=\"https:\/\/code-plus.jp\/gp\/tools\/svg2gif-converter\/\" class=\"_self\" target=\"_self\" >svg2gif-converter<\/a><\/h5><\/div><\/div>\n<div class=\"col-md-4 col-sm-6 col-xs-12 pt-cv-content-item pt-cv-2-col\"  data-pid=\"7615\"><div class='pt-cv-ifield'><h5 class=\"pt-cv-title\"><a href=\"https:\/\/code-plus.jp\/gp\/tools\/charbase36-converter\/\" class=\"_self\" target=\"_self\" >10\u9032\u6570\u3092 26\u9032\u6570\u306b\u3001\u30a8\u30f3\u30b3\u30fc\u30c9 \u2194 \u30c7\u30b3\u30fc\u30c9\u3059\u308b\u30c4\u30fc\u30eb<\/a><\/h5><\/div><\/div>\n<div class=\"col-md-4 col-sm-6 col-xs-12 pt-cv-content-item pt-cv-2-col\"  data-pid=\"9585\"><div class='pt-cv-ifield'><h5 class=\"pt-cv-title\"><a href=\"https:\/\/code-plus.jp\/gp\/tools\/list2trees-converter\/\" class=\"_self\" target=\"_self\" >\u30d7\u30e9\u30b9\u8a18\u53f7(+)\u968e\u5c64\u30ea\u30b9\u30c8\u3092 \u2192 \u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u30c4\u30ea\u30fc\u306b\u5909\u63db\u30c4\u30fc\u30eb<\/a><\/h5><\/div><\/div>\n<div class=\"col-md-4 col-sm-6 col-xs-12 pt-cv-content-item pt-cv-2-col\"  data-pid=\"8005\"><div class='pt-cv-ifield'><h5 class=\"pt-cv-title\"><a href=\"https:\/\/code-plus.jp\/gp\/tools\/page-8005\/\" class=\"_self\" target=\"_self\" >\u884c\u3092 \u2192 \u6307\u5b9a\u5217\u306e\u30bf\u30d6\u533a\u5207\u308a\u884c\u306b\u5909\u63db\u3059\u308b\u30c4\u30fc\u30eb<\/a><\/h5><\/div><\/div>\n<div class=\"col-md-4 col-sm-6 col-xs-12 pt-cv-content-item pt-cv-2-col\"  data-pid=\"7816\"><div class='pt-cv-ifield'><h5 class=\"pt-cv-title\"><a href=\"https:\/\/code-plus.jp\/gp\/tools\/lines-converter\/\" class=\"_self\" target=\"_self\" >\u884c\u3092\u9006\u9806\u306b\u4e26\u3073\u66ff\u3048\u308b\u30c4\u30fc\u30eb<\/a><\/h5><\/div><\/div>\n<div class=\"col-md-4 col-sm-6 col-xs-12 pt-cv-content-item pt-cv-2-col\"  data-pid=\"7187\"><div class='pt-cv-ifield'><h5 class=\"pt-cv-title\"><a href=\"https:\/\/code-plus.jp\/gp\/tools\/charurl-converter\/\" class=\"_self\" target=\"_self\" >\u30c6\u30ad\u30b9\u30c8\u3092 URL\u30a8\u30f3\u30b3\u30fc\u30c9\u306b\u3001\u30a8\u30f3\u30b3\u30fc\u30c9 \u2194 \u30c7\u30b3\u30fc\u30c9\u3059\u308b\u30c4\u30fc\u30eb<\/a><\/h5><\/div><\/div>\n<div class=\"col-md-4 col-sm-6 col-xs-12 pt-cv-content-item pt-cv-2-col\"  data-pid=\"7362\"><div class='pt-cv-ifield'><h5 class=\"pt-cv-title\"><a href=\"https:\/\/code-plus.jp\/gp\/tools\/updatetags-converter\/\" class=\"_self\" target=\"_self\" >HTML\u30bf\u30b0\u4e00\u62ec\u5909\u63db\u30c4\u30fc\u30eb | \u30aa\u30f3\u30e9\u30a4\u30f3\u4e0a\u3067\u30bf\u30b0\u8a18\u6cd5\u3092\u77ac\u6642\u306b\u5909\u63db<\/a><\/h5><\/div><\/div>\n<div class=\"col-md-4 col-sm-6 col-xs-12 pt-cv-content-item pt-cv-2-col\"  data-pid=\"7151\"><div class='pt-cv-ifield'><h5 class=\"pt-cv-title\"><a href=\"https:\/\/code-plus.jp\/gp\/tools\/addclases-converter\/\" class=\"_self\" target=\"_self\" >\u6307\u5b9a\u306e\u30bf\u30b0\u306b \u2192 \u4efb\u610f\u306e\u30af\u30e9\u30b9\u3092\u8ffd\u52a0\u30c4\u30fc\u30eb<\/a><\/h5><\/div><\/div>\n<div class=\"col-md-4 col-sm-6 col-xs-12 pt-cv-content-item pt-cv-2-col\"  data-pid=\"7178\"><div class='pt-cv-ifield'><h5 class=\"pt-cv-title\"><a href=\"https:\/\/code-plus.jp\/gp\/tools\/renumber-converter\/\" class=\"_self\" target=\"_self\" >Markdown\u5f62\u5f0f\u306e\u756a\u53f7\u3092\u4e0a\u304b\u3089\u4ed8\u3051\u76f4\u3059\u30c4\u30fc\u30eb<\/a><\/h5><\/div><\/div>\n<div class=\"col-md-4 col-sm-6 col-xs-12 pt-cv-content-item pt-cv-2-col\"  data-pid=\"7148\"><div class='pt-cv-ifield'><h5 class=\"pt-cv-title\"><a href=\"https:\/\/code-plus.jp\/gp\/tools\/multiwords-converter\/\" class=\"_self\" target=\"_self\" >JSON\u5f62\u5f0f\u3067\u8907\u6570\u306e\u8a9e\u53e5\u3092\u307e\u3068\u3081\u3066\u5909\u63db\u30c4\u30fc\u30eb<\/a><\/h5><\/div><\/div>\n<div class=\"col-md-4 col-sm-6 col-xs-12 pt-cv-content-item pt-cv-2-col\"  data-pid=\"7107\"><div class='pt-cv-ifield'><h5 class=\"pt-cv-title\"><a href=\"https:\/\/code-plus.jp\/gp\/tools\/multiwords-remover\/\" class=\"_self\" target=\"_self\" >JSON\u5f62\u5f0f\u3067\u8907\u6570\u306e\u8a9e\u53e5\u3092\u307e\u3068\u3081\u3066\u524a\u9664\u30c4\u30fc\u30eb<\/a><\/h5><\/div><\/div>\n<div class=\"col-md-4 col-sm-6 col-xs-12 pt-cv-content-item pt-cv-2-col\"  data-pid=\"7127\"><div class='pt-cv-ifield'><h5 class=\"pt-cv-title\"><a href=\"https:\/\/code-plus.jp\/gp\/tools\/zenkakumasu-converter\/\" class=\"_self\" target=\"_self\" >\u5168\u89d2\u6587\u5b57\u3092 \u2192 \u303c \u306b\u5909\u63db\u30c4\u30fc\u30eb<\/a><\/h5><\/div><\/div>\n<div class=\"col-md-4 col-sm-6 col-xs-12 pt-cv-content-item pt-cv-2-col\"  data-pid=\"7079\"><div class='pt-cv-ifield'><h5 class=\"pt-cv-title\"><a href=\"https:\/\/code-plus.jp\/gp\/tools\/number0-converter\/\" class=\"_self\" target=\"_self\" >\u3059\u3079\u3066\u306e\u6570\u5b57\u3092 \u2192 \u00f8 \u306b\u5909\u63db\u30c4\u30fc\u30eb<\/a><\/h5><\/div><\/div>\n<div class=\"col-md-4 col-sm-6 col-xs-12 pt-cv-content-item pt-cv-2-col\"  data-pid=\"6766\"><div class='pt-cv-ifield'><h5 class=\"pt-cv-title\"><a href=\"https:\/\/code-plus.jp\/gp\/tools\/imagemap-converter\/\" class=\"_self\" target=\"_self\" >SVG\u304b\u3089ImageMap\uff08\u30a4\u30e1\u30fc\u30b8\u30de\u30c3\u30d7\uff09\u306b\u5909\u63db\u30c4\u30fc\u30eb<\/a><\/h5><\/div><\/div>\n<div class=\"col-md-4 col-sm-6 col-xs-12 pt-cv-content-item pt-cv-2-col\"  data-pid=\"6747\"><div class='pt-cv-ifield'><h5 class=\"pt-cv-title\"><a href=\"https:\/\/code-plus.jp\/gp\/tools\/fullparenthesis-converter\/\" class=\"_self\" target=\"_self\" >\u534a\u89d2\u62ec\u5f27()\u3092\u3001\u5168\u89d2\u62ec\u5f27\uff08\uff09\u306b\u5909\u63db\u30c4\u30fc\u30eb<\/a><\/h5><\/div><\/div>\n<div class=\"col-md-4 col-sm-6 col-xs-12 pt-cv-content-item pt-cv-2-col\"  data-pid=\"6691\"><div class='pt-cv-ifield'><h5 class=\"pt-cv-title\"><a href=\"https:\/\/code-plus.jp\/gp\/tools\/tags-remover\/\" class=\"_self\" target=\"_self\" >\u3059\u3079\u3066\u306eHTML\u30bf\u30b0\u3092\u524a\u9664\u30c4\u30fc\u30eb<\/a><\/h5><\/div><\/div>\n<div class=\"col-md-4 col-sm-6 col-xs-12 pt-cv-content-item pt-cv-2-col\"  data-pid=\"6019\"><div class='pt-cv-ifield'><h5 class=\"pt-cv-title\"><a href=\"https:\/\/code-plus.jp\/gp\/tools\/ltgt-converter\/\" class=\"_self\" target=\"_self\" >&lt; &gt; \u3092 &amp;lt; &amp;gt; \u306b\u5909\u63db\u30c4\u30fc\u30eb<\/a><\/h5><\/div><\/div>\n<div class=\"col-md-4 col-sm-6 col-xs-12 pt-cv-content-item pt-cv-2-col\"  data-pid=\"170\"><div class='pt-cv-ifield'><h5 class=\"pt-cv-title\"><a href=\"https:\/\/code-plus.jp\/gp\/tools\/deepl-charcounter\/\" class=\"_self\" target=\"_self\" >DeepL\u7ffb\u8a33 &#038; \u6587\u5b57\u6570\u30ab\u30a6\u30f3\u30bf\u30fc<\/a><\/h5><\/div><\/div><\/div><\/div><\/div>\t\t\t<style type=\"text\/css\" id=\"pt-cv-inline-style-2c72e1etez\">#pt-cv-view-2f67d27xgo .pt-cv-title a, #pt-cv-view-2f67d27xgo  .panel-title { font-weight: 600 !important; }\n#pt-cv-view-2f67d27xgo .pt-cv-carousel-caption  { background-color: rgba(51,51,51,.6) !important; }\n#pt-cv-view-2f67d27xgo .pt-cv-specialp { background-color: #CC3333 !important }\n#pt-cv-view-2f67d27xgo .pt-cv-specialp * { color: #fff !important; }\n#pt-cv-view-2f67d27xgo .pt-cv-pficon  { color: #bbb !important; }\n#pt-cv-view-2f67d27xgo .pt-cv-readmore  { color: #ffffff !important; background-color: #00aeef !important; }\n#pt-cv-view-2f67d27xgo .pt-cv-readmore:hover  { color: #ffffff !important; background-color: #00aeef !important; }\n#pt-cv-view-2f67d27xgo  + .pt-cv-pagination-wrapper .pt-cv-more , #pt-cv-view-2f67d27xgo  + .pt-cv-pagination-wrapper .pagination .active a, .pt-cv-pagination[data-sid='2f67d27xgo'] .active a { color: #ffffff !important; background-color: #00aeef !important; }<\/style>\r\n\t\t\t\r\n    <\/div><!-- \/\/\/.interior -->\r\n  <\/section><!-- \/\/\/.section -->\r\n\r\n\r\n\r\n\r\n  <!-- .mediano\uff08\u4f59\u767d\u8abf\u6574\uff1apage\u4e0b\uff09 -->\r\n  <hr class=\"spacer-mediano\" \/>\r\n\r\n<\/div><!-- \/\/\/\u25b2.page  -->\r\n\r\n\r\n\r\n\r\n<script src=\"https:\/\/cdn.jsdelivr.net\/npm\/marked\/marked.min.js\"><\/script>\r\n<script src=\"https:\/\/unpkg.com\/turndown\/dist\/turndown.js\"><\/script>\r\n<script>\r\n  \/\/\u5de6\u30c6\u30ad\u30b9\u30c8\u30a8\u30ea\u30a2 \u2192 \u53f3\u30c6\u30ad\u30b9\u30c8\u30a8\u30ea\u30a2\u3078\u306e\u5909\u63db\r\n  function encodeText() {\r\n    let encode_area = document.getElementById('encodeArea');\r\n    let decode_area = document.getElementById('decodeArea');\r\n    let text = encode_area.value;\r\n\r\n    if (document.getElementById('convertList2Trees').checked) { text = convertList2Trees(text); }\r\n\r\n    decode_area.value = text;\r\n    copyToClipboard(text, false);  \/\/isDecode = false\r\n  }\r\n\r\n\r\n\r\n\r\n  \/\/Markdown\u8a18\u6cd5\u3092 \u2192 HTML \u306b\u5909\u63db\r\n  function convertMd2Html(text) {\r\n    text = marked.parse(text);\r\n    text = text.replace(\/<pre><code>\/g, '<pre><code class=\"language-\">'); \/\/Prism.js\u5f62\u5f0f\u306b\u7f6e\u63db\r\n\r\n    \/\/<pre>\u30bf\u30b0\u5185\u306e\u30b3\u30f3\u30c6\u30f3\u30c4\u3092\u4e00\u6642\u7684\u306b\u4fdd\u8b77\r\n    const preBlocks = [];\r\n    let preIndex = 0;\r\n\r\n    \/\/<pre>\uff5e<\/pre>\u306e\u30d6\u30ed\u30c3\u30af\u3092\u62bd\u51fa\u3057\u3066\u4e00\u6642\u7684\u306a\u30de\u30fc\u30ab\u30fc\u306b\u7f6e\u63db\r\n    text = text.replace(\/<pre[^>]*>[\\s\\S]*?<\\\/pre>\/g, function (match) {\r\n      const marker = `___PRE_BLOCK_${preIndex}___`;\r\n      preBlocks.push(match);\r\n      preIndex++;\r\n      return marker;\r\n    });\r\n\r\n    \/\/<pre>\u4ee5\u5916\u306e\u90e8\u5206\u306e\u30a4\u30f3\u30c7\u30f3\u30c8\u3092\u524a\u9664\r\n    text = text.split('\\n').map(line => line.trim()).filter(line => line !== '').join('\\n');\r\n\r\n    \/\/\u4fdd\u8b77\u3057\u3066\u3044\u305f<pre>\u30d6\u30ed\u30c3\u30af\u3092\u5143\u306b\u623b\u3059\r\n    preBlocks.forEach((block, index) => {\r\n      const marker = `___PRE_BLOCK_${index}___`;\r\n      text = text.replace(marker, block);\r\n    });\r\n\r\n    return text;\r\n  }\r\n\r\n\r\n\r\n  \/\/\u3059\u3079\u3066\u306e\u30bf\u30b0\u3092\u9664\u53bb\r\n  function removeTags(text) {\r\n    text = text.replace(\/<style\\b[^<]*(?:(?!<\\\/style>)<[^<]*)*<\\\/style>\/gi, '');  \/\/<style> \u30bf\u30b0\u3068\u305d\u306e\u5185\u5bb9\u3092\u524a\u9664\r\n    text = text.split('\\n').map(line => line.trim()).join('\\n');\r\n    text = text.replace(\/<[^>]*>\/g, '');\r\n    text = text.trim(); \/\/\u6700\u5f8c\u306b\u5148\u982d\u3068\u672b\u5c3e\u306e\u7a7a\u767d\u3092\u524a\u9664\r\n    return text;\r\n  }\r\n\r\n\r\n  \/\/< >\u3092 \u2192 &lt; &gt; \u306b\u5909\u63db\r\n  function convertEntityLtGts(text) { return text.replace(\/<\/g, '&lt;').replace(\/>\/g, '&gt;'); }\r\n\r\n\r\n  \/\/\u5168\u3066\u306e\u6539\u884c\u3092\u524a\u9664\r\n  function removeLineBreaks(text) { return text.replace(\/\\n\/g, ''); }\r\n\r\n  \/\/\u5358\u4e00\u6539\u884c\u3092\u524a\u9664\u3001\u9023\u7d9a\u6539\u884c\u306f\uff11\u3064\u6e1b\u3089\u3059\r\n  function adjustLineBreaks(text) {\r\n    text = text.replace(\/\\n\\n\\n\\n\/g, '<QuadrupleNewLine>');\r\n    text = text.replace(\/\\n\\n\\n\/g, '<TripleNewLine>');\r\n    text = text.replace(\/\\n\\n\/g, '<DoubleNewLine>');\r\n    text = text.replace(\/\\n\/g, '');\r\n    text = text.replace(\/<QuadrupleNewLine>\/g, '\\n\\n\\n');\r\n    text = text.replace(\/<TripleNewLine>\/g, '\\n\\n');\r\n    text = text.replace(\/<DoubleNewLine>\/g, '\\n');\r\n    return text;\r\n  }\r\n\r\n  \/\/\u6539\u884c\u3092 \u2192 <br \/> \u306b\u5909\u63db\r\n  function convertTagBreaks(text) { return text.replace(\/\\n\/g, '<br \/>\\n'); }\r\n\r\n  \/\/\u6539\u884c\u3092 \u2192 &#13;&#10; \u306b\u5909\u63db\r\n  function convertEntityNewLines(text) { return text.replace(\/\\n\/g, '&#13;&#10;'); }\r\n\r\n  \/\/\u6539\u884c\u3092 \u2192 \\A \u306b\u5909\u63db\r\n  function convertULineFeeds(text) { return text.replace(\/\\n\/g, '\\\\A'); }\r\n\r\n  \/\/\u30bf\u30d6\uff08\\t\uff09\u3092 \u2192 &#9; \u306b\u5909\u63db\r\n  function convertEntityTabs(text) { return text.replace(\/\\t\/g, '&#9;'); }\r\n\r\n  \/\/n+1\u756a\u76ee\u306e\u6539\u884c\u3092\u30bf\u30d6\u306b\u5909\u63db\r\n  function convertNthBreak2Tabs(text) {\r\n    const pattern = document.getElementById('nthBreakCount').value.trim();\r\n\r\n    \/\/\u30d1\u30bf\u30fc\u30f3\u306e\u89e3\u6790\r\n    let nth = 2; \/\/\u30c7\u30d5\u30a9\u30eb\u30c8\u306f2\u756a\u76ee\uff08\u5076\u6570\u756a\u76ee\uff09\r\n\r\n    if (pattern === 'n+1' || pattern === 'odd') {\r\n      \/\/\u5947\u6570\u756a\u76ee\uff081, 3, 5...\uff09\u306e\u6539\u884c\r\n      nth = 'odd';\r\n    } else if (pattern === 'n' || pattern === 'even') {\r\n      \/\/\u5076\u6570\u756a\u76ee\uff082, 4, 6...\uff09\u306e\u6539\u884c\r\n      nth = 'even';\r\n    } else if (pattern.match(\/^\\d+$\/)) {\r\n      \/\/\u7279\u5b9a\u306e\u756a\u53f7\u6307\u5b9a\uff082, 3, 4...\uff09\r\n      nth = parseInt(pattern);\r\n    }\r\n\r\n    \/\/\u884c\u3054\u3068\u306b\u5206\u5272\r\n    const lines = text.split('\\n');\r\n\r\n    if (nth === 'odd') {\r\n      \/\/\u5947\u6570\u756a\u76ee\u306e\u6539\u884c\u3092\u30bf\u30d6\u306b\u5909\u63db\uff082\u884c\u305a\u3064\u30da\u30a2\u306b\u3059\u308b\uff09\r\n      const result = [];\r\n      for (let i = 0; i < lines.length; i += 2) {\r\n        if (i + 1 < lines.length) {\r\n          result.push(lines[i] + '\\t' + lines[i + 1]);\r\n        } else {\r\n          result.push(lines[i]);\r\n        }\r\n      }\r\n      return result.join('\\n');\r\n    } else if (nth === 'even') {\r\n      \/\/\u5076\u6570\u756a\u76ee\u306e\u6539\u884c\u3092\u30bf\u30d6\u306b\u5909\u63db\r\n      const result = [];\r\n      for (let i = 0; i < lines.length; i++) {\r\n        if (i % 2 === 0 && i + 1 < lines.length) {\r\n          \/\/\u6b21\u306e\u884c\u3092\u8ffd\u52a0\u3057\u306a\u3044\uff08\u6b21\u306e\u30eb\u30fc\u30d7\u3067\u51e6\u7406\uff09\r\n          continue;\r\n        } else if (i % 2 === 1) {\r\n          \/\/\u524d\u306e\u884c\u3068\u30bf\u30d6\u3067\u7d50\u5408\r\n          result.push(lines[i - 1] + '\\t' + lines[i]);\r\n        } else {\r\n          \/\/\u6700\u5f8c\u306e\u884c\u304c\u5947\u6570\u756a\u76ee\u306e\u5834\u5408\r\n          result.push(lines[i]);\r\n        }\r\n      }\r\n      return result.join('\\n');\r\n    } else if (typeof nth === 'number' && nth > 0) {\r\n      \/\/\u7279\u5b9a\u756a\u53f7\u3054\u3068\u306e\u6539\u884c\u3092\u30bf\u30d6\u306b\u5909\u63db\r\n      const result = [];\r\n      let currentGroup = [];\r\n\r\n      for (let i = 0; i < lines.length; i++) {\r\n        currentGroup.push(lines[i]);\r\n\r\n        if (currentGroup.length === nth || i === lines.length - 1) {\r\n          result.push(currentGroup.join('\\t'));\r\n          currentGroup = [];\r\n        }\r\n      }\r\n      return result.join('\\n');\r\n    }\r\n\r\n    return text;\r\n  }\r\n\r\n  \/\/\uff12\u3064\u4ee5\u4e0a\u306e\u9023\u7d9a\u3059\u308b\u30b9\u30da\u30fc\u30b9\uff08\\s{X,}\uff09\u3092\u3001\u30bf\u30d6\uff08\\t\uff09 \u306b\u5909\u63db\r\n  function convert2spacesTabs(text, count) {\r\n    const regex = new RegExp(`\\\\s{${count},}`, 'g');\r\n    return text.replace(regex, '\\t');\r\n  }\r\n\r\n\r\n\r\n\r\n  \/\/\u5168\u89d2\u6587\u5b57\uff08\\x01-\\x7E\uff09\u3092 \u2192 \u303c \u306b\u5909\u63db\uff08\u3000|\u3001|\u3002|\u8a18\u53f7 \u306f\u9664\u5916\uff09\r\n  function convertFullWidths(text) {\r\n    return text\r\n      .replace(\/\u3000\/g, '\u2b1a')  \/\/\u5168\u89d2\u30b9\u30da\u30fc\u30b9\u3092 \u2192 \u2b1a \u306b\u5909\u63db\r\n      .replace(\/[^(?!.*(\u3000|\uff3f|\u2b1a|\u303c|\u3001|\u3002|\u30fb|\u2025|\u2026|\uff5e|\u203b|\u3012|\u25cf|\u25ef|\u25cc|\u25ce|\u25c9|\u29bf|\u25a0|\u25a1|\u25a3|\u25c6|\u25c7|\u25c8|\u25b2|\u25b3|\u25bc|\u25bd|\u25c0|\u25c1|\u25b6|\u25b7|\u2606|\u2605)).\\x01-\\x7E]\/g, '\u303c');\r\n  }\r\n\r\n  \/\/\u82f1\u5927\u6587\u5b57\u3092 \u2192 \u2341 \u306b\u5909\u63db\r\n  function convertAlphaUppers(text) { return text.replace(\/[A-Z]\/g, '\u2341'); }\r\n\r\n  \/\/\u82f1\u5c0f\u6587\u5b57\u3092 \u2192 \u29c4 \u306b\u5909\u63db\r\n  function convertAlphaLowers(text) { return text.replace(\/[a-z]\/g, '\u29c4'); }\r\n\r\n  \/\/\u6570\u5b57\u3092 \u2192 \u00f8 \u306b\u5909\u63db\r\n  function convertNumber0s(text) { return text.replace(\/[0-9]\/g, '\u00f8'); }\r\n\r\n  \/\/\u6570\u5b57\u3092 \u2192 \u30e9\u30f3\u30c0\u30e0\u306a\u6570\u5b57 \u306b\u5909\u63db\uff080\u306f0\u306e\u307e\u307e\uff09\r\n  function convertNumberRandoms(text) { return text.replace(\/[1-9]\/g, () => Math.floor(Math.random() * 9) + 1); }\r\n\r\n  \/\/\u534a\u89d2()\u3092 \u2192 \u5168\u89d2\uff08\uff09 \u306b\u5909\u63db\r\n  function convertFullParenthesis(text) { return text.replace(\/\\(\/g, '\uff08').replace(\/\\)\/g, '\uff09'); }\r\n\r\n  \/\/\u5168\u89d2\uff08\uff09\u3092 \u2192 \u534a\u89d2() \u306b\u5909\u63db\r\n  function convertHalfParenthesis(text) { return text.replace(\/\uff08\/g, '(').replace(\/\uff09\/g, ')'); }\r\n\r\n\r\n\r\n\r\n  \/\/Markdown\u5f62\u5f0f\u306e\u756a\u53f7\uff08*. \uff09\u3092 \u2192 \u4e0a\u304b\u3089\u9023\u756a\u3067\u4ed8\u3051\u76f4\u3059\r\n  function convertRenumbers(text) {\r\n    \/\/\u884c\u3054\u3068\u306b\u5206\u5272\r\n    let lines = text.split('\\n');\r\n    let firstNumber = null;  \/\/\u6700\u521d\u306b\u898b\u3064\u3051\u305f\u756a\u53f7\u3092\u4fdd\u5b58\r\n    let currentNumber = null;  \/\/\u73fe\u5728\u306e\u9023\u756a\r\n    let hasNumberedLine = false;  \/\/\u756a\u53f7\u4ed8\u304d\u306e\u884c\u304c\u5b58\u5728\u3059\u308b\u304b\r\n\r\n    \/\/\u6700\u521d\u306e\u6709\u52b9\u306a\u756a\u53f7\u3092\u898b\u3064\u3051\u308b\r\n    for (let line of lines) {\r\n      const match = line.match(\/^(\\d+)\\.\\s+\/);\r\n      if (match) {\r\n        firstNumber = parseInt(match[1]);\r\n        currentNumber = firstNumber;\r\n        hasNumberedLine = true;\r\n        break;\r\n      }\r\n    }\r\n\r\n    \/\/\u756a\u53f7\u4ed8\u304d\u306e\u884c\u304c\u5b58\u5728\u3057\u306a\u3044\u5834\u5408\u306f\u51e6\u7406\u3057\u306a\u3044\r\n    if (!hasNumberedLine) {\r\n      return text;\r\n    }\r\n\r\n    \/\/\u5404\u884c\u3092\u51e6\u7406\r\n    const processedLines = lines.map(line => {\r\n      \/\/Markdown\u5f62\u5f0f\u306e\u756a\u53f7\u4ed8\u304d\u30ea\u30b9\u30c8\u306b\u30de\u30c3\u30c1\u3059\u308b\u6b63\u898f\u8868\u73fe\r\n      const match = line.match(\/^(\\d+)\\.\\s+(.+)$\/);\r\n\r\n      if (match) {\r\n        \/\/\u756a\u53f7\u306e\u90e8\u5206\u3092\u73fe\u5728\u306e\u9023\u756a\u3067\u7f6e\u63db\r\n        \/\/\u5143\u306e\u6570\u5b57\u306e\u6841\u6570\u306b\u5fdc\u3058\u3066\u30b9\u30da\u30fc\u30b9\u306e\u6570\u3092\u8abf\u6574\r\n        const originalNumLength = match[1].length;\r\n        const newNumLength = currentNumber.toString().length;\r\n        const spaceDiff = originalNumLength - newNumLength;\r\n        const extraSpaces = spaceDiff > 0 ? ' '.repeat(spaceDiff) : '';\r\n\r\n        const newLine = `${currentNumber}.${extraSpaces} ${match[2]}`;\r\n        currentNumber++;\r\n        return newLine;\r\n      }\r\n      return line;\r\n    });\r\n\r\n    return processedLines.join('\\n');\r\n  }\r\n\r\n\r\n  \/\/+\u8a18\u53f7\u306e\u30ea\u30b9\u30c8\u5f62\u5f0f\u3092 \u2192 \u30c4\u30ea\u30fc\u5f62\u5f0f\u306b\u5909\u63db\r\n  function convertList2Trees(text) {\r\n    const lines = text.split('\\n');\r\n    const result = [];\r\n    const stack = []; \/\/ \u5404\u968e\u5c64\u3067\u300c\u307e\u3060\u5f8c\u7d9a\u8981\u7d20\u304c\u3042\u308b\u304b\u300d\u3092\u7ba1\u7406\r\n\r\n    for (let i = 0; i < lines.length; i++) {\r\n      const line = lines[i].trim();\r\n\r\n      \/\/ \u7a7a\u884c\u306f\u305d\u306e\u307e\u307e\u51fa\u529b\r\n      if (line === '') {\r\n        result.push('');\r\n        continue;\r\n      }\r\n\r\n      \/\/ + \u3067\u59cb\u307e\u308b\u884c\u3092\u691c\u51fa\uff08\u30b9\u30da\u30fc\u30b9\/\u30bf\u30d6\u3092\u542b\u3080\u53ef\u80fd\u6027\u3082\u8003\u616e\uff09\r\n      const match = line.match(\/^\\s*(\\+{1,6})\\s+(.+)$\/);\r\n      if (!match) {\r\n        result.push(line);\r\n        continue;\r\n      }\r\n\r\n      const plusCount = match[1].length; \/\/ + \u306e\u6570\u3067\u968e\u5c64\u30ec\u30d9\u30eb\u3092\u5224\u5b9a\r\n      const content = match[2].trim();\r\n\r\n      \/\/ \u73fe\u5728\u306e\u30ec\u30d9\u30eb\u3088\u308a\u6df1\u3044\u30b9\u30bf\u30c3\u30af\u8981\u7d20\u3092\u524a\u9664\r\n      while (stack.length >= plusCount) {\r\n        stack.pop();\r\n      }\r\n\r\n      \/\/ \u6b21\u306e\u540c\u3058\u30ec\u30d9\u30eb\u4ee5\u4e0a\u306e\u884c\u3092\u30c1\u30a7\u30c3\u30af\u3057\u3066\u3001\u3053\u308c\u304c\u6700\u5f8c\u306e\u8981\u7d20\u304b\u3069\u3046\u304b\u5224\u5b9a\r\n      let isLastInLevel = true;\r\n      for (let j = i + 1; j < lines.length; j++) {\r\n        const nextLine = lines[j].trim();\r\n        if (nextLine === '') continue; \/\/ \u7a7a\u884c\u306f\u7121\u8996\r\n\r\n        const nextMatch = nextLine.match(\/^\\s*(\\+{1,6})\\s+(.+)$\/);\r\n        if (nextMatch) {\r\n          const nextPlusCount = nextMatch[1].length;\r\n          if (nextPlusCount === plusCount) {\r\n            \/\/ \u540c\u3058\u30ec\u30d9\u30eb\u306e\u8981\u7d20\u304c\u898b\u3064\u304b\u3063\u305f\r\n            isLastInLevel = false;\r\n            break;\r\n          }\r\n          if (nextPlusCount < plusCount) {\r\n            \/\/ \u3088\u308a\u6d45\u3044\u30ec\u30d9\u30eb\u306e\u8981\u7d20\u304c\u898b\u3064\u304b\u3063\u305f\uff08\u3053\u308c\u3067\u7d42\u308f\u308a\uff09\r\n            break;\r\n          }\r\n          \/\/ \u3088\u308a\u6df1\u3044\u30ec\u30d9\u30eb\u306e\u8981\u7d20\u306f\u7121\u8996\u3057\u3066\u7d99\u7d9a\r\n        } else {\r\n          \/\/ + \u3067\u59cb\u307e\u3089\u306a\u3044\u884c\u304c\u898b\u3064\u304b\u3063\u305f\r\n          break;\r\n        }\r\n      }\r\n\r\n      \/\/ \u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u3092\u69cb\u7bc9\uff08\u968e\u5c64\u3054\u3068\u306e\u7e26\u7dda\uff09\r\n      let prefix = '';\r\n      for (let level = 1; level < plusCount; level++) {\r\n        if (stack[level - 1]) {\r\n          prefix += '\u2502    ';\r\n        } else {\r\n          prefix += '      ';\r\n        }\r\n      }\r\n\r\n      \/\/ \u73fe\u5728\u306e\u884c\u306e\u30b3\u30cd\u30af\u30bf\uff08\u679d\uff09\u3092\u8ffd\u52a0\r\n      const connector = isLastInLevel ? '\u2514\u2500 ' : '\u251c\u2500 ';\r\n\r\n      \/\/ \u30b9\u30bf\u30c3\u30af\u306b\u73fe\u5728\u306e\u72b6\u614b\u3092\u8a18\u9332\r\n      stack[plusCount - 1] = !isLastInLevel;\r\n\r\n      \/\/ \u7d50\u679c\u306b\u8ffd\u52a0\r\n      if (plusCount === 1) {\r\n        \/\/ \u7b2c1\u968e\u5c64\u306f\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u306a\u3057\r\n        result.push(content);\r\n      } else {\r\n        result.push(prefix + connector + content);\r\n      }\r\n    }\r\n\r\n    return result.join('\\n');\r\n  }\r\n\r\n\r\n\r\n\r\n\r\n  \/\/JSON\u5f62\u5f0f\u3067\u8907\u6570\u306e\u8a9e\u53e5\u3092\u307e\u3068\u3081\u3066\u524a\u9664\r\n  function removeMultiWords(text) {\r\n    try {\r\n      \/\/\u5165\u529b\u5024\u3092\u53d6\u5f97\u3057\u3066\u6574\u5f62\r\n      let removeTxts = document.getElementById('removeTxts').value;\r\n\r\n      \/\/\u5165\u529b\u5024\u3092\u6574\u5f62\u3059\u308b\u95a2\u6570\r\n      function formatToJSON(input) {\r\n        \/\/\u65e2\u306bJSON\u5f62\u5f0f\u306e\u5834\u5408\u306f\u305d\u306e\u307e\u307e\u8fd4\u3059\r\n        try {\r\n          JSON.parse(input);\r\n          return input;\r\n        } catch {\r\n          \/\/[] \u3067\u56f2\u307e\u308c\u3066\u3044\u306a\u3044\u5834\u5408\u306f\u8ffd\u52a0\r\n          if (!input.startsWith('[') && !input.endsWith(']')) {\r\n            input = '[' + input + ']';\r\n          }\r\n\r\n          \/\/\u30ab\u30f3\u30de\u533a\u5207\u308a\u306e\u5404\u8981\u7d20\u3092\u51e6\u7406\r\n          const words = input.slice(1, -1).split(',').map(word => {\r\n            \/\/\u30b9\u30da\u30fc\u30b9\u3092\u4fdd\u6301\u3057\u305f\u307e\u307e\u3001\u30c0\u30d6\u30eb\u30af\u30a9\u30fc\u30c8\u306e\u307f\u3092\u8ffd\u52a0\r\n            if (!word.startsWith('\"') && !word.endsWith('\"')) {\r\n              word = '\"' + word + '\"';\r\n            }\r\n            return word;\r\n          });\r\n\r\n          return '[' + words.join(',') + ']';\r\n        }\r\n      }\r\n\r\n      \/\/\u5165\u529b\u5024\u3092\u6574\u5f62\r\n      removeTxts = formatToJSON(removeTxts);\r\n\r\n      \/\/\u6574\u5f62\u3057\u305f\u5024\u3092\u5165\u529b\u6b04\u306b\u53cd\u6620\uff08\u30aa\u30d7\u30b7\u30e7\u30f3\uff09\r\n      document.getElementById('removeTxts').value = removeTxts;\r\n\r\n      \/\/JSON\u3068\u3057\u3066\u30d1\u30fc\u30b9\r\n      const removeTxtsArray = JSON.parse(removeTxts);\r\n\r\n      \/\/\u5404\u8a9e\u53e5\u3092\u524a\u9664\r\n      removeTxtsArray.forEach(word => {\r\n        const escapedWord = word.replace(\/[.*+?^${}()|[\\]\\\\]\/g, '\\\\$&');\r\n        const regex = new RegExp(escapedWord, 'g');\r\n        text = text.replace(regex, '');\r\n      });\r\n\r\n      return text;\r\n    } catch (error) {\r\n      console.error('\u524a\u9664\u30a8\u30e9\u30fc:', error);\r\n      showMessage('\u8a9e\u53e5\u306e\u6307\u5b9a\u5f62\u5f0f\u304c\u6b63\u3057\u304f\u3042\u308a\u307e\u305b\u3093\u3002', false);\r\n      return text;\r\n    }\r\n  }\r\n\r\n  \/\/JSON\u5f62\u5f0f\u3067\u8907\u6570\u306e\u8a9e\u53e5\u3092\u307e\u3068\u3081\u3066\u5909\u63db\r\n  function convertMultiWords(text) {\r\n    try {\r\n      \/\/\u5165\u529b\u5024\u3092\u53d6\u5f97\u3057\u3066\u6574\u5f62\r\n      let beforeTxts = document.getElementById('beforeTxts').value;\r\n      let afterTxts = document.getElementById('afterTxts').value;\r\n\r\n      \/\/\u5165\u529b\u5024\u3092\u6574\u5f62\u3059\u308b\u95a2\u6570\r\n      function formatToJSON(input) {\r\n        \/\/\u65e2\u306bJSON\u5f62\u5f0f\u306e\u5834\u5408\u306f\u305d\u306e\u307e\u307e\u8fd4\u3059\r\n        try {\r\n          JSON.parse(input);\r\n          return input;\r\n        } catch {\r\n          \/\/[] \u3067\u56f2\u307e\u308c\u3066\u3044\u306a\u3044\u5834\u5408\u306f\u8ffd\u52a0\r\n          if (!input.startsWith('[') && !input.endsWith(']')) {\r\n            input = '[' + input + ']';\r\n          }\r\n\r\n          \/\/\u30ab\u30f3\u30de\u533a\u5207\u308a\u306e\u5404\u8981\u7d20\u3092\u51e6\u7406\r\n          const words = input.slice(1, -1).split(',').map(word => {\r\n            \/\/\u30b9\u30da\u30fc\u30b9\u3092\u4fdd\u6301\u3057\u305f\u307e\u307e\u3001\u30c0\u30d6\u30eb\u30af\u30a9\u30fc\u30c8\u306e\u307f\u3092\u8ffd\u52a0\r\n            if (!word.startsWith('\"') && !word.endsWith('\"')) {\r\n              word = '\"' + word + '\"';\r\n            }\r\n            return word;\r\n          });\r\n\r\n          return '[' + words.join(',') + ']';\r\n        }\r\n      }\r\n\r\n      \/\/\u5165\u529b\u5024\u3092\u6574\u5f62\r\n      beforeTxts = formatToJSON(beforeTxts);\r\n      afterTxts = formatToJSON(afterTxts);\r\n\r\n      \/\/\u6574\u5f62\u3057\u305f\u5024\u3092\u5165\u529b\u6b04\u306b\u53cd\u6620\uff08\u30aa\u30d7\u30b7\u30e7\u30f3\uff09\r\n      document.getElementById('beforeTxts').value = beforeTxts;\r\n      document.getElementById('afterTxts').value = afterTxts;\r\n\r\n      \/\/JSON\u3068\u3057\u3066\u30d1\u30fc\u30b9\r\n      const beforeTxtsArray = JSON.parse(beforeTxts);\r\n      const afterTxtsArray = JSON.parse(afterTxts);\r\n\r\n      \/\/\u4ee5\u964d\u306f\u65e2\u5b58\u306e\u30b3\u30fc\u30c9\r\n      if (beforeTxtsArray.length !== afterTxtsArray.length) {\r\n        throw new Error('\u5909\u63db\u524d\u3068\u5909\u63db\u5f8c\u306e\u8a9e\u53e5\u306e\u6570\u304c\u4e00\u81f4\u3057\u307e\u305b\u3093');\r\n      }\r\n\r\n      beforeTxtsArray.forEach((beforeTxt, index) => {\r\n        const escapedFromWord = beforeTxt.replace(\/[.*+?^${}()|[\\]\\\\]\/g, '\\\\$&');\r\n        const regex = new RegExp(escapedFromWord, 'g');\r\n        text = text.replace(regex, afterTxtsArray[index]);\r\n      });\r\n\r\n      return text;\r\n    } catch (error) {\r\n      console.error('\u5909\u63db\u30a8\u30e9\u30fc:', error);\r\n      showMessage('\u8a9e\u53e5\u306e\u6307\u5b9a\u5f62\u5f0f\u304c\u6b63\u3057\u304f\u3042\u308a\u307e\u305b\u3093\u3002', false);\r\n      return text;\r\n    }\r\n  }\r\n\r\n\r\n\r\n\r\n  \/\/ |\uff08\u30d1\u30a4\u30d7\uff09\u3092 \u2192 <dl>\u30bf\u30b0 \u306b\u5909\u63db\r\n  function convertTagDelimits(text) {\r\n    \/\/\u6539\u884c\u3067\u5206\u5272\r\n    const lines = text.split('\\n');\r\n\r\n    \/\/\u5404\u884c\u3092\u51e6\u7406\r\n    const processedLines = lines.map(line => {\r\n      line = line.trim();\r\n      if (line === '') return '';\r\n\r\n      \/\/ |\uff08\u30d1\u30a4\u30d7\uff09\u3067\u59cb\u307e\u3063\u3066\u3044\u306a\u3044\u5834\u5408\u306f\u8ffd\u52a0\r\n      if (!line.startsWith('|')) {\r\n        line = '|' + line;\r\n      }\r\n      \/\/ |\uff08\u30d1\u30a4\u30d7\uff09\u3067\u7d42\u308f\u3063\u3066\u3044\u306a\u3044\u5834\u5408\u306f\u8ffd\u52a0\r\n      if (!line.endsWith('|')) {\r\n        line = line + '|';\r\n      }\r\n\r\n      return line;\r\n    }).filter(line => line !== ''); \/\/\u7a7a\u884c\u3092\u524a\u9664\r\n\r\n    if (processedLines.length === 0) return text;\r\n\r\n    \/\/Dl\u306eHTML\u69cb\u7bc9\r\n    let delimitHtml = '<dl class=\"delimit\">\\n';\r\n\r\n    processedLines.forEach(line => {\r\n      const cells = line.split('|')\r\n        .filter(cell => cell !== '') \/\/\u7a7a\u306e\u30bb\u30eb\u3092\u524a\u9664\r\n        .map(cell => cell.trim()); \/\/\u30bb\u30eb\u5185\u5bb9\u3092\u30c8\u30ea\u30e0\r\n\r\n      if (cells.length >= 2) { \/\/\u5c11\u306a\u304f\u3068\u30822\u3064\u306e\u30bb\u30eb\u304c\u3042\u308b\u5834\u5408\u306e\u307f\u51e6\u7406\r\n        delimitHtml += '  <div class=\"rung\">\\n';\r\n        delimitHtml += `    <dt>${cells[0]}<\/dt>\\n`;\r\n        delimitHtml += `    <dd>${cells[1]}<\/dd>\\n`;\r\n        delimitHtml += '  <\/div>\\n';\r\n      }\r\n    });\r\n\r\n    delimitHtml += '<\/dl><!-- \/\/\/.delimit -->';\r\n    return delimitHtml;\r\n  }\r\n\r\n\r\n\r\n\r\n  \/\/ |\uff08\u30d1\u30a4\u30d7\uff09\u3092 \u2192 <table>\u30bf\u30b0 \u306b\u5909\u63db\r\n  function convertTagTables(text) {\r\n    \/\/\u6539\u884c\u3067\u5206\u5272\r\n    const lines = text.split('\\n');\r\n\r\n    \/\/\u5404\u884c\u3092\u51e6\u7406\r\n    const processedLines = lines.map(line => {\r\n      line = line.trim();\r\n      if (line === '') return '';\r\n\r\n      \/\/ |\uff08\u30d1\u30a4\u30d7\uff09\u3067\u59cb\u307e\u3063\u3066\u3044\u306a\u3044\u5834\u5408\u306f\u8ffd\u52a0\r\n      if (!line.startsWith('|')) {\r\n        line = '|' + line;\r\n      }\r\n      \/\/ |\uff08\u30d1\u30a4\u30d7\uff09\u3067\u7d42\u308f\u3063\u3066\u3044\u306a\u3044\u5834\u5408\u306f\u8ffd\u52a0\r\n      if (!line.endsWith('|')) {\r\n        line = line + '|';\r\n      }\r\n\r\n      return line;\r\n    }).filter(line => line !== ''); \/\/\u7a7a\u884c\u3092\u524a\u9664\r\n\r\n    if (processedLines.length === 0) return text;\r\n\r\n    \/\/\u30c6\u30fc\u30d6\u30eb\u306eHTML\u69cb\u7bc9\r\n    let tableHtml = '<table>\\n<tbody>\\n';\r\n\r\n    processedLines.forEach(line => {\r\n      const cells = line.split('|')\r\n        .filter(cell => cell !== '') \/\/\u7a7a\u306e\u30bb\u30eb\u3092\u524a\u9664\r\n        .map(cell => cell.trim()); \/\/\u30bb\u30eb\u5185\u5bb9\u3092\u30c8\u30ea\u30e0\r\n\r\n      if (cells.length >= 2) { \/\/\u5c11\u306a\u304f\u3068\u30822\u3064\u306e\u30bb\u30eb\u304c\u3042\u308b\u5834\u5408\u306e\u307f\u51e6\u7406\r\n        tableHtml += '  <tr class=\"rung\">\\n';\r\n        tableHtml += `    <th>${cells[0]}<\/th>\\n`;\r\n        tableHtml += `    <td>${cells[1]}<\/td>\\n`;\r\n        tableHtml += '  <\/tr>\\n';\r\n      }\r\n    });\r\n\r\n    tableHtml += '<\/tbody>\\n<\/table><!-- \/\/\/.table -->';\r\n    return tableHtml;\r\n  }\r\n\r\n\r\n\r\n\r\n  \/\/|++ \uff5e ++| \u3067\u56f2\u307e\u308c\u305f\u6a2a\u65b9\u5411\u306e\u30bb\u30eb\u3092\u7d50\u5408\u3059\u308b\r\n  function margeHoryCells(text) {\r\n    console.log('\u30bb\u30eb\u306e\u7d50\u5408\u51e6\u7406\u3092\u958b\u59cb\u3057\u307e\u3059');\r\n\r\n    try {\r\n      \/\/++\u8a18\u53f7\u304c\u30c6\u30ad\u30b9\u30c8\u5185\u306b\u3042\u308b\u304b\u306e\u7c21\u6613\u30c1\u30a7\u30c3\u30af\r\n      if (text.indexOf('++') === -1) {\r\n        console.log('++\u8a18\u53f7\u304c\u898b\u3064\u304b\u308a\u307e\u305b\u3093');\r\n        return text;\r\n      }\r\n\r\n      \/\/Markdown\u5909\u63db\u76f4\u5f8c\u306eHTML\u30d1\u30bf\u30fc\u30f3\u306b\u5408\u308f\u305b\u305f\u6b63\u898f\u8868\u73fe\r\n      return text.replace(\/<tr>\\s*<td>\\s*\\+\\+\\s*(.*?)\\s*\\+\\+\\s*<\\\/td>(?:\\s*<td>.*?<\\\/td>)*\\s*<\\\/tr>\/g, function (match, content) {\r\n        console.log('++\u3067\u56f2\u307e\u308c\u305f\u30bb\u30eb\u3092\u898b\u3064\u3051\u307e\u3057\u305f:', content);\r\n\r\n        \/\/\u30d8\u30c3\u30c0\u30fc\u884c\u304b\u3089\u30ab\u30e9\u30e0\u6570\u3092\u53d6\u5f97\r\n        const headerMatch = text.match(\/<thead>\\s*<tr>\\s*(<th>.*?<\\\/th>\\s*)+<\\\/tr>\/);\r\n        let columnCount = 3; \/\/\u30c7\u30d5\u30a9\u30eb\u30c8\u5024\r\n\r\n        if (headerMatch) {\r\n          const headerRow = headerMatch[0];\r\n          const headerCells = headerRow.match(\/<th>\/g);\r\n          if (headerCells) {\r\n            columnCount = headerCells.length;\r\n            console.log(`\u30c6\u30fc\u30d6\u30eb\u30d8\u30c3\u30c0\u30fc\u304b\u3089\u5217\u6570 ${columnCount} \u3092\u691c\u51fa\u3057\u307e\u3057\u305f`);\r\n          }\r\n        }\r\n\r\n        \/\/\u5143\u306e\u30c6\u30ad\u30b9\u30c8\u304b\u3089\u30de\u30fc\u30af\u3092\u53d6\u308a\u9664\u304f\r\n        const cleanedContent = content.trim();\r\n        console.log('\u30af\u30ea\u30fc\u30f3\u306a\u5185\u5bb9:', cleanedContent);\r\n\r\n        \/\/colspan\u5c5e\u6027\u3092\u6301\u3064\u30bb\u30eb\u3067\u7f6e\u304d\u63db\u3048\r\n        const result = `<tr><td colspan=\"${columnCount}\">${cleanedContent}<\/td><\/tr>`;\r\n        console.log('\u7f6e\u63db\u7d50\u679c:', result);\r\n\r\n        return result;\r\n      });\r\n    } catch (error) {\r\n      console.error('\u30bb\u30eb\u7d50\u5408\u30a8\u30e9\u30fc:', error);\r\n      showMessage('\u30bb\u30eb\u306e\u7d50\u5408\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3002', false);\r\n      return text;\r\n    }\r\n  }\r\n\r\n\r\n\r\n\r\n  \/\/<table>\u5404\u884c\u6700\u521d\u306e\u30bb\u30eb\u3092 \u2192 <th> \u306b\u5909\u63db\r\n  function convertTagTd2Ths(text) {\r\n    try {\r\n      \/\/Step 1: \u4e00\u6642\u7684\u306a\u30de\u30fc\u30ab\u30fc\u3092\u4f7f\u7528\u3057\u3066\u30c6\u30fc\u30d6\u30eb\u5185\u306e\u30b3\u30f3\u30c6\u30f3\u30c4\u3092\u4fdd\u8b77\r\n      text = text.replace(\/(<table[\\s\\S]*?<\\\/table>)\/g, (table) => {\r\n        \/\/\u307e\u305a\u5168\u3066\u306e\u30bb\u30eb\u3092<td>\u306b\u5909\u63db\uff08<thead>\u5185\u3082\u542b\u3080\uff09\r\n        let processedTable = table.replace(\/<th(\\s[^>]*)?>([\\s\\S]*?)<\\\/th>\/g, '<td$1>$2<\/td>');\r\n\r\n        \/\/\u5404\u884c\u306e\u6700\u521d\u306e\u30bb\u30eb\u3092<th>\u306b\u5909\u63db\r\n        processedTable = processedTable.replace(\/(<tr[^>]*>)\\s*<td(\\s[^>]*)?>([\\s\\S]*?)<\\\/td>\/g,\r\n          '$1<th$2>$3<\/th>');\r\n\r\n        \/\/marked.js\u3068\u540c\u3058\u5f62\u5f0f\u306b\u6574\u5f62\uff08\u30a4\u30f3\u30c7\u30f3\u30c8\u3068\u6539\u884c\u3092\u8abf\u6574\uff09\r\n        processedTable = beautifyTable(processedTable);\r\n\r\n        return processedTable;\r\n      });\r\n\r\n      return text;\r\n    } catch (error) {\r\n      console.error('\u30c6\u30fc\u30d6\u30eb\u5909\u63db\u30a8\u30e9\u30fc:', error);\r\n      showMessage('\u30c6\u30fc\u30d6\u30eb\u306e\u5909\u63db\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3002', false);\r\n      return text;\r\n    }\r\n  }\r\n\r\n\r\n\r\n\r\n  \/\/\u30c6\u30fc\u30d6\u30ebHTML\u3092\u6574\u5f62\u3059\u308b\u95a2\u6570\r\n  function beautifyTable(html) {\r\n    \/\/\u4e0d\u8981\u306a\u7a7a\u767d\u3092\u524a\u9664\r\n    html = html.replace(\/>\\s+<\/g, '><').trim();\r\n\r\n    \/\/\u57fa\u672c\u7684\u306a\u30a4\u30f3\u30c7\u30f3\u30c8\u3068\u6539\u884c\u3092\u8a2d\u5b9a\r\n    html = html\r\n      \/\/<table> \u30bf\u30b0\u306e\u5f8c\u306b\u6539\u884c\u3092\u8ffd\u52a0\r\n      .replace(\/<table([^>]*)>\/g, '<table$1>\\n')\r\n\r\n      \/\/<thead> \u30bf\u30b0\u306e\u524d\u5f8c\u306b\u6539\u884c\u3068\u30a4\u30f3\u30c7\u30f3\u30c8\u3092\u8ffd\u52a0\r\n      .replace(\/<thead>\/g, '<thead>\\n')\r\n      .replace(\/<\\\/thead>\/g, '\\n<\/thead>')\r\n\r\n      \/\/<tbody> \u30bf\u30b0\u306e\u524d\u5f8c\u306b\u6539\u884c\u3068\u30a4\u30f3\u30c7\u30f3\u30c8\u3092\u8ffd\u52a0\r\n      .replace(\/<tbody>\/g, '<tbody>\\n')\r\n      .replace(\/<\\\/tbody>\/g, '\\n<\/tbody>')\r\n\r\n      \/\/<tr> \u30bf\u30b0\u306e\u524d\u5f8c\u306b\u6539\u884c\u3068\u30a4\u30f3\u30c7\u30f3\u30c8\u3092\u8ffd\u52a0\r\n      .replace(\/<tr>\/g, '<tr>\\n')\r\n      .replace(\/<\\\/tr>\/g, '\\n<\/tr>')\r\n\r\n      \/\/<th> \u30bf\u30b0\u3068 <td> \u30bf\u30b0\u306e\u5f8c\u306b\u6539\u884c\u3092\u8ffd\u52a0\r\n      .replace(\/<th([^>]*)>\/g, '<th$1>')\r\n      .replace(\/<\\\/th>\/g, '<\/th>\\n')\r\n      .replace(\/<td([^>]*)>\/g, '<td$1>')\r\n      .replace(\/<\\\/td>\/g, '<\/td>\\n');\r\n\r\n    \/\/\u6700\u7d42\u7684\u306a\u6574\u5f62\uff08\u30a4\u30f3\u30c7\u30f3\u30c8\u306e\u8ffd\u52a0\uff09\r\n    const lines = html.split('\\n');\r\n    let indentLevel = 0;\r\n    let result = '';\r\n\r\n    for (let i = 0; i < lines.length; i++) {\r\n      const line = lines[i].trim();\r\n      if (!line) continue;\r\n\r\n      \/\/\u9589\u3058\u30bf\u30b0\u306e\u5834\u5408\u306f\u30a4\u30f3\u30c7\u30f3\u30c8\u3092\u6e1b\u3089\u3059\r\n      if (line.startsWith('<\/')) {\r\n        indentLevel = Math.max(0, indentLevel - 1);\r\n      }\r\n\r\n      \/\/\u30a4\u30f3\u30c7\u30f3\u30c8\u3092\u9069\u7528\r\n      result += ' '.repeat(indentLevel * 2) + line + '\\n';\r\n\r\n      \/\/\u958b\u59cb\u30bf\u30b0\u306e\u5834\u5408\u306f\u30a4\u30f3\u30c7\u30f3\u30c8\u3092\u5897\u3084\u3059\uff08\u9589\u3058\u30bf\u30b0\u3084\u81ea\u5df1\u9589\u3058\u30bf\u30b0\u306f\u9664\u304f\uff09\r\n      if (line.startsWith('<') && !line.startsWith('<\/') && !line.endsWith('\/>') && !line.startsWith('<th') && !line.startsWith('<td')) {\r\n        indentLevel++;\r\n      }\r\n    }\r\n\r\n    return result.trim();\r\n  }\r\n\r\n\r\n\r\n\r\n  \/\/<img \/>\u3092 \u2192 <picture> \u3067\u56f2\u3080\r\n  function encloseTagImgPictures(text) {\r\n    try {\r\n      \/\/\u3059\u3067\u306bpicture\u30bf\u30b0\u3067\u56f2\u307e\u308c\u3066\u3044\u308bimg\u30bf\u30b0\u3092\u4e00\u6642\u7684\u306b\u30de\u30fc\u30af\r\n      let markedText = text;\r\n      let markerIndex = 0;\r\n      const markers = {};\r\n\r\n      \/\/picture\u30bf\u30b0\u3067\u56f2\u307e\u308c\u3066\u3044\u308bimg\u30bf\u30b0\u3092\u4e00\u6642\u7684\u306b\u7f6e\u63db\r\n      markedText = markedText.replace(\/<picture[^>]*>[\\s\\S]*?<img[^>]*>[\\s\\S]*?<\\\/picture>\/gi, function (match) {\r\n        const marker = `___PICTURE_MARKER_${markerIndex}___`;\r\n        markers[marker] = match;\r\n        markerIndex++;\r\n        return marker;\r\n      });\r\n\r\n      \/\/picture\u30bf\u30b0\u3067\u56f2\u307e\u308c\u3066\u3044\u306a\u3044img\u30bf\u30b0\u3092picture\u30bf\u30b0\u3067\u56f2\u3080\r\n      markedText = markedText.replace(\/<img([^>]*)>\/gi, function (match, attributes) {\r\n        \/\/\u81ea\u5df1\u9589\u3058\u30bf\u30b0\u306e\u5834\u5408\u306e\u51e6\u7406\r\n        if (attributes.endsWith('\/')) {\r\n          \/\/\u6700\u5f8c\u306e\/\u3092\u524a\u9664\u3057\u3066\u304b\u3089\u51e6\u7406\r\n          const cleanAttrs = attributes.slice(0, -1).trim();\r\n          return `<picture><img${cleanAttrs ? ' ' + cleanAttrs : ''} \/><\/picture>`;\r\n        } else {\r\n          return `<picture><img${attributes}><\/picture>`;\r\n        }\r\n      });\r\n\r\n      \/\/\u30de\u30fc\u30ab\u30fc\u3092\u5143\u306epicture\u30bf\u30b0\u306b\u623b\u3059\r\n      Object.keys(markers).forEach(marker => {\r\n        markedText = markedText.replace(marker, markers[marker]);\r\n      });\r\n\r\n      return markedText;\r\n    } catch (error) {\r\n      console.error('img\u2192picture\u5909\u63db\u30a8\u30e9\u30fc:', error);\r\n      showMessage('img\u30bf\u30b0\u306epicture\u56f2\u307f\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3002', false);\r\n      return text;\r\n    }\r\n  }\r\n\r\n\r\n\r\n\r\n  \/\/<p>\u5185\u306e\u6539\u884c\u3092 \u2192 <br \/> \u306b\u5909\u63db\r\n  function convertTagBreaks_inP(text) {\r\n    \/\/<p>\u30bf\u30b0\u5185\u306e\u6539\u884c\u3092\u691c\u51fa\u3057\u3066<br \/>\u30bf\u30b0\u306b\u7f6e\u63db\uff08<pre>\u30bf\u30b0\u306f\u9664\u5916\uff09\r\n    return text.replace(\/(<p(?:\\s[^>]*)?>)([\\s\\S]*?)(<\\\/p>)\/g, function (match, openTag, content, closeTag) {\r\n      \/\/\u30b3\u30f3\u30c6\u30f3\u30c4\u5185\u306e\u6539\u884c\u3092<br \/>\u306b\u5909\u63db\r\n      const convertedContent = content.replace(\/\\n\/g, '<br \/>\\n');\r\n      return openTag + convertedContent + closeTag;\r\n    });\r\n  }\r\n\r\n\r\n\r\n\r\n  function convertListStyles(text) {\r\n    \/\/list-style-type\u306e\u5909\u63db\r\n    const convertUList = document.getElementById('convertUListStyles').checked;\r\n    const convertOList = document.getElementById('convertOListStyles').checked;\r\n    const uListStyle = document.querySelector('#convertUListStyles + select').value;\r\n    const oListStyle = document.querySelector('#convertOListStyles + select').value;\r\n\r\n    if (convertUList) {\r\n      \/\/<ul>\u30bf\u30b0\u306e\u51e6\u7406\r\n      text = text.replace(\/<ul((?:[^>](?!style))*?)>\/gi, `<ul$1 style=\"list-style-type:${uListStyle};\">`);\r\n      text = text.replace(\/<ul([^>]*?)style=\"([^\"]*?)\"\/gi, function (match, p1, p2) {\r\n        if (p2.includes('list-style-type')) {\r\n          return `<ul${p1}style=\"${p2.replace(\/list-style-type:[^;]+;?\/, `list-style-type:${uListStyle};`)}\"`;\r\n        } else {\r\n          return `<ul${p1}style=\"${p2}list-style-type:${uListStyle};\"`;\r\n        }\r\n      });\r\n    }\r\n\r\n    if (convertOList) {\r\n      \/\/<ol>\u30bf\u30b0\u306e\u51e6\u7406\uff08<ul>\u3068\u540c\u69d8\uff09\r\n      text = text.replace(\/<ol((?:[^>](?!style))*?)>\/gi, `<ol$1 style=\"list-style-type:${oListStyle};\">`);\r\n      text = text.replace(\/<ol([^>]*?)style=\"([^\"]*?)\"\/gi, function (match, p1, p2) {\r\n        if (p2.includes('list-style-type')) {\r\n          return `<ol${p1}style=\"${p2.replace(\/list-style-type:[^;]+;?\/, `list-style-type:${oListStyle};`)}\"`;\r\n        } else {\r\n          return `<ol${p1}style=\"${p2}list-style-type:${oListStyle};\"`;\r\n        }\r\n      });\r\n    }\r\n\r\n    return text;\r\n  }\r\n\r\n\r\n\r\n\r\n\r\n  \/\/\u6307\u5b9a\u306e\u30bf\u30b0\u306b\u3001\u4efb\u610f\u306e\u30af\u30e9\u30b9\u3092\u8ffd\u52a0\r\n  function processAllTagClasses(text) {\r\n    try {\r\n      \/\/\u51e6\u7406\u5bfe\u8c61\u306e\u5404\u30a4\u30f3\u30d7\u30c3\u30c8\u8981\u7d20\u306e\u30bb\u30c3\u30c8\r\n      const inputSets = [\r\n        { tagId: 'targetAddClase1', classId: 'afterAddClase1', checkboxId: 'convertAddClase1s' },\r\n        { tagId: 'targetAddClase2', classId: 'afterAddClase2', checkboxId: 'convertAddClase2s' },\r\n        { tagId: 'targetAddClase9', classId: 'afterAddClase9', checkboxId: 'convertAddClase9s' },\r\n        { tagId: 'targetAddClase10', classId: 'afterAddClase10', checkboxId: 'convertAddClase10s' },\r\n        { tagId: 'targetAddClase11', classId: 'afterAddClase11', checkboxId: 'convertAddClase11s' },\r\n        { tagId: 'targetAddClase12', classId: 'afterAddClase12', checkboxId: 'convertAddClase12s' },\r\n        { tagId: 'targetAddClase13', classId: 'afterAddClase13', checkboxId: 'convertAddClase13s' },\r\n        { tagId: 'targetAddClase14', classId: 'afterAddClase14', checkboxId: 'convertAddClase14s' },\r\n        { tagId: 'targetAddClase15', classId: 'afterAddClase15', checkboxId: 'convertAddClase15s' },\r\n        { tagId: 'targetAddClase16', classId: 'afterAddClase16', checkboxId: 'convertAddClase16s' },\r\n        { tagId: 'targetAddClase17', classId: 'afterAddClase17', checkboxId: 'convertAddClase17s' },\r\n        { tagId: 'targetAddClase18', classId: 'afterAddClase18', checkboxId: 'convertAddClase18s' },\r\n        { tagId: 'targetAddClase19', classId: 'afterAddClase19', checkboxId: 'convertAddClase19s' },\r\n        { tagId: 'targetAddClase20', classId: 'afterAddClase20', checkboxId: 'convertAddClase20s' }\r\n      ];\r\n      \/\/\u5404\u30bb\u30c3\u30c8\u306b\u5bfe\u3057\u3066\u51e6\u7406\u3092\u5b9f\u884c\r\n      for (const set of inputSets) {\r\n        \/\/\u30c1\u30a7\u30c3\u30af\u30dc\u30c3\u30af\u30b9\u304c\u30c1\u30a7\u30c3\u30af\u3055\u308c\u3066\u3044\u308b\u304b\u78ba\u8a8d\r\n        if (document.getElementById(set.checkboxId).checked) {\r\n          const targetTag = document.getElementById(set.tagId).value.trim();\r\n          const addClass = document.getElementById(set.classId).value.trim();\r\n\r\n          \/\/\u7a7a\u306e\u5165\u529b\u30c1\u30a7\u30c3\u30af\r\n          if (!targetTag || !addClass) {\r\n            console.warn(`${set.tagId}\u307e\u305f\u306f${set.classId}\u304c\u7a7a\u3067\u3059`);\r\n            continue; \/\/\u3053\u306e\u51e6\u7406\u3092\u30b9\u30ad\u30c3\u30d7\u3057\u3066\u6b21\u3078\r\n          }\r\n\r\n          \/\/\u6b63\u78ba\u306a\u30bf\u30b0\u30de\u30c3\u30c1\u30f3\u30b0\u306e\u305f\u3081\u306e\u6539\u826f\u3055\u308c\u305f\u6b63\u898f\u8868\u73fe\r\n          \/\/\u30bf\u30b0\u306f<\u30bf\u30b0\u540d>\u307e\u305f\u306f<\u30bf\u30b0\u540d \u5c5e\u6027...>\u306e\u5f62\u5f0f\u306b\u30de\u30c3\u30c1\u3059\u308b\r\n          const regex = new RegExp(`<${targetTag}(>|\\\\s[^>]*>)`, 'g');\r\n\r\n          text = text.replace(regex, (match) => {\r\n            \/\/\u9589\u3058\u62ec\u5f27\u306e\u76f4\u524d\u306e\u4f4d\u7f6e\u3092\u898b\u3064\u3051\u308b\r\n            const closeBracketPos = match.lastIndexOf('>');\r\n            const beforeCloseBracket = match.substring(0, closeBracketPos);\r\n\r\n            if (beforeCloseBracket.includes('class=\"')) {\r\n              \/\/\u65e2\u5b58\u306eclass\u5c5e\u6027\u304c\u3042\u308b\u5834\u5408\r\n              return match.replace(\/class=\"([^\"]*)\"\/, (m, existingClasses) => {\r\n                const classArray = existingClasses.split(' ');\r\n                if (!classArray.includes(addClass)) {\r\n                  return `class=\"${existingClasses} ${addClass}\"`;\r\n                }\r\n                return m;\r\n              });\r\n            } else {\r\n              \/\/class\u5c5e\u6027\u304c\u306a\u3044\u5834\u5408\u3001\u9589\u3058\u62ec\u5f27\u306e\u76f4\u524d\u306bclass\u5c5e\u6027\u3092\u8ffd\u52a0\r\n              return `${beforeCloseBracket} class=\"${addClass}\">`;\r\n            }\r\n          });\r\n        }\r\n      }\r\n\r\n      return text;\r\n    } catch (error) {\r\n      console.error('\u30af\u30e9\u30b9\u8ffd\u52a0\u30a8\u30e9\u30fc:', error);\r\n      showMessage('\u30af\u30e9\u30b9\u8ffd\u52a0\u51e6\u7406\u3067\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f\u3002', false);\r\n      return text;\r\n    }\r\n  }\r\n\r\n\r\n  \/\/\u6307\u5b9a\u306e\u30bf\u30b0\u3092 \u2192 \u4efb\u610f\u306e\u30bf\u30b0 \u306b\u5909\u63db\r\n  function processAllTagUpdates(text) {\r\n    try {\r\n      \/\/\u51e6\u7406\u5bfe\u8c61\u306e\u5404\u30a4\u30f3\u30d7\u30c3\u30c8\u8981\u7d20\u306e\u30bb\u30c3\u30c8\r\n      const updateSets = [\r\n        { targetId: 'targetUpdateTag1', afterId: 'afterUpdateTag1', checkboxId: 'convertUpdateTag1s' },\r\n        { targetId: 'targetUpdateTag2', afterId: 'afterUpdateTag2', checkboxId: 'convertUpdateTag2s' },\r\n        { targetId: 'targetUpdateTag3', afterId: 'afterUpdateTag3', checkboxId: 'convertUpdateTag3s' },\r\n        { targetId: 'targetUpdateTag4', afterId: 'afterUpdateTag4', checkboxId: 'convertUpdateTag4s' },\r\n        { targetId: 'targetUpdateTag5', afterId: 'afterUpdateTag5', checkboxId: 'convertUpdateTag5s' },\r\n        { targetId: 'targetUpdateTag6', afterId: 'afterUpdateTag6', checkboxId: 'convertUpdateTag6s' }\r\n      ];\r\n\r\n      \/\/\u5404\u30bb\u30c3\u30c8\u306b\u5bfe\u3057\u3066\u51e6\u7406\u3092\u5b9f\u884c\r\n      for (const set of updateSets) {\r\n        \/\/\u30c1\u30a7\u30c3\u30af\u30dc\u30c3\u30af\u30b9\u304c\u30c1\u30a7\u30c3\u30af\u3055\u308c\u3066\u3044\u308b\u304b\u78ba\u8a8d\r\n        if (document.getElementById(set.checkboxId).checked) {\r\n          const targetTag = document.getElementById(set.targetId).value.trim();\r\n          const afterTag = document.getElementById(set.afterId).value.trim();\r\n\r\n          \/\/\u7a7a\u306e\u5165\u529b\u30c1\u30a7\u30c3\u30af\r\n          if (!targetTag || !afterTag) {\r\n            console.warn(`${set.targetId}\u307e\u305f\u306f${set.afterId}\u304c\u7a7a\u3067\u3059`);\r\n            continue; \/\/\u3053\u306e\u51e6\u7406\u3092\u30b9\u30ad\u30c3\u30d7\u3057\u3066\u6b21\u3078\r\n          }\r\n\r\n          \/\/\u30bf\u30b0\u540d\u3068\u5c5e\u6027\u3092\u62bd\u51fa\r\n          const targetMatch = targetTag.match(\/^<([^\\s>]+)([^>]*)>\/);\r\n          const afterMatch = afterTag.match(\/^<([^\\s>]+)([^>]*)>\/);\r\n\r\n          if (!targetMatch || !afterMatch) {\r\n            console.warn(`${set.targetId}\u307e\u305f\u306f${set.afterId}\u306e\u30bf\u30b0\u5f62\u5f0f\u304c\u6b63\u3057\u304f\u3042\u308a\u307e\u305b\u3093`);\r\n            continue;\r\n          }\r\n\r\n          const [fullTargetTag, targetTagName, targetAttrs] = targetMatch;\r\n          const [fullAfterTag, afterTagName, afterAttrs] = afterMatch;\r\n\r\n          \/\/\u6b63\u898f\u8868\u73fe\u30d1\u30bf\u30fc\u30f3\u3067\u30bf\u30b0\u3092\u30a8\u30b9\u30b1\u30fc\u30d7\r\n          const escapedTargetTag = escapeRegExp(fullTargetTag);\r\n\r\n          \/\/\u958b\u59cb\u30bf\u30b0\u3068\u7d42\u4e86\u30bf\u30b0\u306e\u7f6e\u63db\u3092\u76f4\u63a5\u884c\u3046\uff08\u30de\u30fc\u30ab\u30fc\u3092\u4f7f\u308f\u306a\u3044\uff09\r\n          const openRegex = new RegExp(escapedTargetTag, 'g');\r\n          const closeRegex = new RegExp(`<\/${targetTagName}>`, 'g');\r\n\r\n          \/\/\u958b\u59cb\u30bf\u30b0\u3092\u7f6e\u63db\r\n          text = text.replace(openRegex, fullAfterTag);\r\n\r\n          \/\/\u7d42\u4e86\u30bf\u30b0\u3092\u7f6e\u63db\r\n          text = text.replace(closeRegex, `<\/${afterTagName}>`);\r\n        }\r\n      }\r\n\r\n      return text;\r\n    } catch (error) {\r\n      console.error('\u30bf\u30b0\u66f4\u65b0\u30a8\u30e9\u30fc:', error);\r\n      showMessage('\u30bf\u30b0\u306e\u66f4\u65b0\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3002', false);\r\n      return text;\r\n    }\r\n  }\r\n\r\n  \/\/\u6b63\u898f\u8868\u73fe\u306e\u30a8\u30b9\u30b1\u30fc\u30d7\u7528\u30d8\u30eb\u30d1\u30fc\u95a2\u6570\r\n  function escapeRegExp(string) {\r\n    return string.replace(\/[.*+?^${}()|[\\]\\\\]\/g, '\\\\$&');\r\n  }\r\n\r\n\r\n\r\n\r\n  \/\/\u53f3\u30c6\u30ad\u30b9\u30c8\u30a8\u30ea\u30a2 \u2192 \u5de6\u30c6\u30ad\u30b9\u30c8\u30a8\u30ea\u30a2\u3078\u306e\u5909\u63db\r\n  function decodeText() {\r\n    let encode_area = document.getElementById('encodeArea');\r\n    let decode_area = document.getElementById('decodeArea');\r\n    let text = decode_area.value;\r\n\r\n    encode_area.value = text;\r\n    copyToClipboard(text, true);   \/\/isDecode = true\r\n  }\r\n\r\n\r\n\r\n\r\n  \/\/\u30c6\u30fc\u30d6\u30eb\u30bf\u30b0\u3092 \u2192 |\uff08\u30d1\u30a4\u30d7\uff09 \u306b\u30c7\u30b3\u30fc\u30c9\r\n  function decodeTagTables(text) {\r\n    try {\r\n      \/\/\u30c6\u30fc\u30d6\u30eb\u5168\u4f53\u3092\u691c\u7d22\u3057\u3066\u51e6\u7406\r\n      return text.replace(\/<table[^>]*>([\\s\\S]*?)<\\\/table>\/g, function (tableMatch, tableContent) {\r\n        let pipeRows = '';\r\n\r\n        \/\/\u5404\u884c\uff08tr\uff09\u3092\u51e6\u7406\r\n        const rowMatches = tableContent.match(\/<tr[^>]*>([\\s\\S]*?)<\\\/tr>\/g);\r\n\r\n        if (!rowMatches) return tableMatch; \/\/\u30c6\u30fc\u30d6\u30eb\u884c\u304c\u898b\u3064\u304b\u3089\u306a\u3044\u5834\u5408\u306f\u5143\u306e\u307e\u307e\r\n\r\n        rowMatches.forEach(rowMatch => {\r\n          const rowContent = rowMatch.replace(\/<\\\/?tr[^>]*>\/g, ''); \/\/tr \u30bf\u30b0\u3092\u9664\u53bb\r\n          let pipeRow = '|';\r\n\r\n          \/\/\u30bb\u30eb\uff08th, td\uff09\u3092\u51e6\u7406\r\n          const cellMatches = rowContent.match(\/<(th|td)[^>]*>([\\s\\S]*?)<\\\/(th|td)>\/g);\r\n\r\n          if (cellMatches) {\r\n            cellMatches.forEach(cellMatch => {\r\n              \/\/\u30bb\u30eb\u306e\u5185\u5bb9\u3092\u62bd\u51fa\uff08HTML\u30bf\u30b0\u306f\u4fdd\u6301\uff09\r\n              const cellContent = cellMatch.replace(\/<\\\/(th|td)>$\/, '').replace(\/^<(th|td)[^>]*>\/, '');\r\n\r\n              \/\/\u30bb\u30eb\u5185\u5bb9\u3092\u30af\u30ea\u30fc\u30f3\u30a2\u30c3\u30d7\uff08\u524d\u5f8c\u306e\u7a7a\u767d\u3092\u524a\u9664\uff09\r\n              const cleanContent = cellContent.trim();\r\n\r\n              pipeRow += cleanContent + '|';\r\n            });\r\n          }\r\n\r\n          \/\/\u884c\u304c\u7a7a\u3067\u306a\u3044\u5834\u5408\u306e\u307f\u8ffd\u52a0\r\n          if (pipeRow.length > 1) {\r\n            pipeRows += pipeRow + '\\n';\r\n          }\r\n        });\r\n\r\n        \/\/\u6700\u5f8c\u306e\u6539\u884c\u3092\u524a\u9664\r\n        return pipeRows.replace(\/\\n$\/, '');\r\n      });\r\n    } catch (error) {\r\n      console.error('\u30c6\u30fc\u30d6\u30eb\u30c7\u30b3\u30fc\u30c9\u30a8\u30e9\u30fc:', error);\r\n      showMessage('\u30c6\u30fc\u30d6\u30eb\u306e\u30c7\u30b3\u30fc\u30c9\u306b\u5931\u6557\u3057\u307e\u3057\u305f\u3002', false);\r\n      return text;\r\n    }\r\n  }\r\n\r\n\r\n\r\n\r\n  \/\/HTML\u3092 \u2192 Markdown\u8a18\u6cd5 \u306b\u30c7\u30b3\u30fc\u30c9\r\n  function decodeHtml2Md(text) {\r\n    const turndownService = new TurndownService();\r\n    return turndownService.turndown(text);\r\n  }\r\n\r\n\r\n\r\n\r\n  \/\/\u30af\u30ea\u30c3\u30d7\u30dc\u30fc\u30c9\u3078\u306e\u30b3\u30d4\u30fc\r\n  function copyToClipboard(text, isDecode = false) {\r\n    navigator.clipboard.writeText(text).then(function () {\r\n      if (isDecode) {\r\n        \/\/\u53f3\u304b\u3089\u5de6\u3078\u306e\u5909\u63db\u6642\u306f\u5de6\u5074(decodedMessage)\u306b\u8868\u793a\r\n        showMessage(\"\u30c6\u30ad\u30b9\u30c8\u304c\u30af\u30ea\u30c3\u30d7\u30dc\u30fc\u30c9\u306b\u30b3\u30d4\u30fc\u3055\u308c\u307e\u3057\u305f\uff01\", true, 'decodedMessage');\r\n      } else {\r\n        \/\/\u5de6\u304b\u3089\u53f3\u3078\u306e\u5909\u63db\u6642\u306f\u53f3\u5074(encodedMessage)\u306b\u8868\u793a\r\n        showMessage(\"\u30c6\u30ad\u30b9\u30c8\u304c\u30af\u30ea\u30c3\u30d7\u30dc\u30fc\u30c9\u306b\u30b3\u30d4\u30fc\u3055\u308c\u307e\u3057\u305f\uff01\", true, 'encodedMessage');\r\n      }\r\n    }, function (err) {\r\n      if (isDecode) {\r\n        showMessage(\"\u30af\u30ea\u30c3\u30d7\u30dc\u30fc\u30c9\u3078\u306e\u30b3\u30d4\u30fc\u306b\u5931\u6557\u3057\u307e\u3057\u305f: \" + err, false, 'decodedMessage');\r\n      } else {\r\n        showMessage(\"\u30af\u30ea\u30c3\u30d7\u30dc\u30fc\u30c9\u3078\u306e\u30b3\u30d4\u30fc\u306b\u5931\u6557\u3057\u307e\u3057\u305f: \" + err, false, 'encodedMessage');\r\n      }\r\n    });\r\n  }\r\n\r\n\r\n\r\n\r\n  \/\/\u30a8\u30e9\u30fc\u30e1\u30c3\u30bb\u30fc\u30b8\r\n  function showMessage(msg, isSuccess, messageAreaId) {\r\n    let messageArea = document.getElementById(messageAreaId);\r\n    const messageHTML = isSuccess ?\r\n      `<p class=\"alert is-ghosted is-primary mt-0.5r\">\r\n<i class=\"icon mas ma-check_circle c-primary mr-0.5r\"><\/i>\r\n<span>${msg}<\/span>\r\n<\/p>` :\r\n      `<p class=\"alert is-ghosted is-error mt-0.5r\">\r\n<i class=\"icon mas ma-error c-error mr-0.5r\"><\/i>\r\n<span>${msg}<\/span>\r\n<\/p>`;\r\n\r\n    messageArea.innerHTML = '';\r\n    messageArea.insertAdjacentHTML('beforeend', messageHTML);\r\n\r\n    setTimeout(() => {\r\n      messageArea.innerHTML = '';\r\n    }, 3000);\r\n  }\r\n\r\n\r\n\r\n\r\n  \/\/\u30da\u30fc\u30b8\u8aad\u307f\u8fbc\u307f\u6642\u306b\u4fdd\u5b58\u3055\u308c\u305f\u30c6\u30ad\u30b9\u30c8\u3092\u8aad\u307f\u8fbc\u3080\r\n  window.addEventListener('load', function () {\r\n    const savedText = localStorage.getItem('encodedText');\r\n    if (savedText) {\r\n      document.getElementById('encodeArea').value = savedText;\r\n    }\r\n  });\r\n\r\n\r\n  \/\/\u30c6\u30ad\u30b9\u30c8\u30a8\u30ea\u30a2\u306e\u5185\u5bb9\u304c\u5909\u66f4\u3055\u308c\u305f\u3089\u4fdd\u5b58\r\n  document.getElementById('encodeArea').addEventListener('input', function () {\r\n    localStorage.setItem('encodedText', this.value);\r\n  });\r\n<\/script>","protected":false},"excerpt":{"rendered":"+\u8a18\u53f7\u306e\u500b\u6570\u3067\u968e\u5c64\u3092\u8868\u73fe\u3057\u305f\u30ea\u30b9\u30c8\u3092\u3001\u8996\u899a\u7684\u306a\u30c4\u30ea\u30fc\u69cb\u9020\uff08\u251c\u2500\u2500 \u2514\u2500\u2500\uff09\u306b\u81ea\u52d5\u5909\u63db\u3057\u307e\u3059\u3002\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u69cb\u9020\u3001Claude\u3078\u306e\u8aac\u660e\u7528\u306b\u6700\u9069","protected":false},"author":1,"featured_media":9605,"parent":173,"menu_order":24,"comment_status":"closed","ping_status":"closed","template":"templates\/page-converter.php","meta":{"footnotes":""},"categories":[21],"tags":[],"class_list":{"0":"post-9585","1":"page","2":"type-page","3":"status-publish","4":"has-post-thumbnail","6":"category-tool"},"_links":{"self":[{"href":"https:\/\/code-plus.jp\/gp\/wp-json\/wp\/v2\/pages\/9585","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/code-plus.jp\/gp\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/code-plus.jp\/gp\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/code-plus.jp\/gp\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/code-plus.jp\/gp\/wp-json\/wp\/v2\/comments?post=9585"}],"version-history":[{"count":10,"href":"https:\/\/code-plus.jp\/gp\/wp-json\/wp\/v2\/pages\/9585\/revisions"}],"predecessor-version":[{"id":11865,"href":"https:\/\/code-plus.jp\/gp\/wp-json\/wp\/v2\/pages\/9585\/revisions\/11865"}],"up":[{"embeddable":true,"href":"https:\/\/code-plus.jp\/gp\/wp-json\/wp\/v2\/pages\/173"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/code-plus.jp\/gp\/wp-json\/wp\/v2\/media\/9605"}],"wp:attachment":[{"href":"https:\/\/code-plus.jp\/gp\/wp-json\/wp\/v2\/media?parent=9585"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/code-plus.jp\/gp\/wp-json\/wp\/v2\/categories?post=9585"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/code-plus.jp\/gp\/wp-json\/wp\/v2\/tags?post=9585"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}