スクリプトコードの説明

スクリプトコードの説明

スクリプトコードを説明します。

0
0
58
4

投稿日時:

  • プロンプト実行例
スクリプトコードの説明

こんにちは!スクリプトを貼ってね

<!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <title>文字数カウントツール</title> <script> function countCharacters() { var inputText = document.getElementById("input").value;

var charCount = inputText.length; var charCountNoSpace = inputText.replace(/\s/g, '').length; var wordCount = inputText.trim().split(/\s+/).length; var lineBreakCount = (inputText.match(/\n/g) || []).length; var alphabetCount = inputText.replace(/[^A-Za-z]/g, '').length; var numberCount = inputText.replace(/[^0-9]/g, '').length; var hiraganaCount = inputText.replace(/[^ぁ-んァ-ン]/g, '').length; var katakanaCount = inputText.replace(/[^ァ-ン]/g, '').length; var punctuationCount = inputText.replace(/[^。、.,-]/g, '').length; var symbolCount = inputText.replace(/[^!-]/g, '').length; var kanjiCount = inputText.replace(/[^一-龠々]/g, '').length; var urlCount = inputText.split('http').length - 1; var utf8ByteCount = new Blob([inputText], {type: 'plain/text'}).size; var shiftJISByteCount = unescape(encodeURIComponent(inputText)).length; var jisByteCount = inputText.replace(/[^ -。-゚]/g, '').length; var eucJPByteCount = encodeURIComponent(inputText).replace(/%[A-F\d]{2}/g, 'U').length;

var charPerPage = parseFloat(document.getElementById("charPerPage").value); var includeHalfWidth = document.getElementById("includeHalfWidth").checked;

var pageCount = Math.ceil(charCount / charPerPage); if (includeHalfWidth) { charCount += inputText.replace(/[^\x01-\x7E]/g, '').length * -0.5; }

document.getElementById("charCount").textContent = charCount; document.getElementById("charCountNoSpace").textContent = charCountNoSpace; document.getElementById("wordCount").textContent = wordCount; document.getElementById("lineBreakCount").textContent = lineBreakCount; document.getElementById("alphabetCount").textContent = alphabetCount; document.getElementById("numberCount").textContent = numberCount; document.getElementById("hiraganaCount").textContent = hiraganaCount; document.getElementById("katakanaCount").textContent = katakanaCount; document.getElementById("punctuationCount").textContent = punctuationCount; document.getElementById("symbolCount").textContent = symbolCount; document.getElementById("kanjiCount").textContent = kanjiCount; document.getElementById("urlCount").textContent = urlCount; document.getElementById("utf8ByteCount").textContent = utf8ByteCount; document.getElementById("shiftJISByteCount").textContent = shiftJISByteCount; document.getElementById("jisByteCount").textContent = jisByteCount; document.getElementById("eucJPByteCount").textContent = eucJPByteCount; document.getElementById("pageCount").textContent = pageCount; } </script>

</head> <body> <textarea id="input" rows="10" cols="50" placeholder="ここにテキストを入力してください"></textarea> <br> <button onclick="countCharacters()">文字数をカウント</button> <br> <label for="charPerPage">1ページあたりの文字数: </label> <input type="number" id="charPerPage" value="400"> <label><input type="checkbox" id="includeHalfWidth">半角文字を0.5文字としてカウントする</label> <br> <p>文字数(スペース込み): <span id="charCount"></span></p> <p>文字数(スペース無視): <span id="charCountNoSpace"></span></p> <p>単語数: <span id="wordCount"></span></p> <p>改行コード数: <span id="lineBreakCount"></span></p> <p>英字数: <span id="alphabetCount"></span></p> <p>数字数: <span id="numberCount"></span></p> <p>ひらがな数: <span id="hiraganaCount"></span></p> <p>カタカナ数: <span id="katakanaCount"></span></p> <p>句読点数: <span id="punctuationCount"></span></p> <p>記号数: <span id="symbolCount"></span></p> <p>漢字数: <span id="kanjiCount"></span></p> <p>URL数: <span id="urlCount"></span></p> <p>UTF-8バイト数: <span id="utf8ByteCount"></span></p> <p>Shift_JISバイト数: <span id="shiftJISByteCount"></span></p> <p>JISバイト数: <span id="jisByteCount"></span></p> <p>EUC_JPバイト数: <span id="eucJPByteCount"></span></p> <p>原稿用紙何枚: <span id="pageCount"></span></p> </body> </html>
スクリプトコードの説明

このスクリプトは、テキストエリアに入力されたテキストの各種文字数やバイト数、文字の種類などをカウントするツールです。以下に、スクリプトの機能と動作について簡単に説明します。

  1. countCharacters 関数:

    • countCharacters 関数は、テキストエリアに入力されたテキストから各種の文字数やバイト数を計算し、それらの結果を表示する役割を持ちます。
    • ボタンがクリックされるとこの関数が呼び出され、テキストの解析が行われます。
  2. 文字数やバイト数の計算:

    • テキストエリアに入力されたテキストから、スペースを含む文字数、スペースを無視した文字数、単語数、改行コードの数、英字の数、数字の数、ひらがなの数、カタカナの数、句読点の数、記号の数、漢字の数、URLの数、UTF-8バイト数、Shift_JISバイト数、JISバイト数、EUC_JPバイト数を計算しています。
  3. ページ数の計算:

    • 1ページあたりの文字数と、半角文字を0.5文字としてカウントするかどうかに応じて、原稿用紙何枚に相当するかも計算しています。

計算に利用している正規表現や数式、処理の過程で注意すべきポイントは、各種の文字数やバイト数を計算する際にそれぞれの特徴を考慮していることです。また、半角文字を0.5文字としてカウントするかどうかの条件分岐、また数値を表示するための HTML 要素の操作などが行われています。

このスクリプトはブラウザ上で動作し、入力されたテキストから様々な情報を抽出・計算して表示することができる、便利な文字数カウントツールとなっています。

コメント 0

他のプロンプトもチェック

  • GPTs

    音楽

    アーティスト(歌手名やバンド名)や曲名のスタイルを英語で表示します。アーティストの場合、そのアーティストに特徴的なジャンルの選択肢が表示されます。曲調を知りたいジャンルを選択することで、そのアーティストのジャンルに特有の曲調を英語で表示します。Sunoなどの音楽生成AIのスタイルにご利用頂けます。要約が120文字より多くなることもありますが、その場合は編集してご利用ください。 #suno #音楽 #作曲 #音楽生成AI #ジャンル #曲調
    1
    0
    71
    403
  • 文案作成

    VOCALOID{ボカロ}曲の歌詞を生成するよ!
    7
    0
    762
    5.15K
  • チャットボット

    推奨モデル - GPT 4o
    シーシャのミックスを考案してくれるAIアシスタントです。 参考程度にご利用ください。 AIにシーシャを理解させる実験として作りました。 これによって考案されたミックスでよさそうだと思ったものは、 ぜひシーシャカフェやシーシャバーで注文して、吸ってみてください。 【注意】 フレーバーによって燃焼しやすさ、味や香りの出やすさ、味や香りが出る速度、水分量が異なります。長らく使用されていないフレーバーは水分が通常より抜けていることもあります。 また、シーシャの設定や温度湿度などの空調、ホイルの巻き方、ホイルの穴の開け方、炭の温度、ハガルへの盛り方、手入れや調整、 そしてシーシャプレイヤーの経験から培われたノウハウや手腕、手法、こだわり、スタイル、価値観などによっても、味や香りの感じ方、煙の量、継続時間などが細かく変化します。 他にも、調理用ボウルでフレーバーをかき混ぜて均等化したり、ハガルの種類やヒートマネジメントシステムの種類や使い方によっても変わります。 このAIでは、そのあたりの前提が学習されておりませんので、あくまで参考程度に留めてください。 #シーシャ #フレーバー #ミックス #shisha #flavor #mix #hookah #フーカー
    0
    0
    332
    2.29K
  • 画像生成

    キャラクター作成

    推奨モデル - DALL•E 3
    動物とフルーツをミックスして、超フルーティーな可愛い動物を生み出します。 好きな動物と好きな果物・野菜をブレンドしてみてください❗
    1
    0
    36
    152