人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

下記のような、HTMLファイルのテキストデータの文字数を計算できるソフト、もしくは下記の機能の一部でも実現できているソフトがありましたら教えてください。

<HTMLテキストデータ文字数計算ソフト>
metaタグ内、Bodyタグ内、Alt、title属性内全てのテキストデータを計算可能であり、コンマ、カッコなどは自動除外して計算できるソフト。

●質問者: gonee
●カテゴリ:インターネット ウェブ制作
✍キーワード:BODY HTML コンマ ソフト タグ
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● kou32rr
●0ポイント

PHPプログラムを利用できるのであれば、下記ページにサンプルがありました。

http://d.hatena.ne.jp/steel-plate/20080417/1208445174

ここから文字列をタグ毎に取得して、それぞれで文字数カウントすればOKかと。

◎質問者からの返答

回答ありがとうございます。PHPはよく分からないので、自分でカスタマイズする必要なく、URLあるいはHTMLファイルを読み込んで自動的にmetaタグ内、Bodyタグ内、Alt、title属性内全てのテキストデータを計算できるソフトはないものでしょうか。


2 ● Cherenkov
●70ポイント ベストアンサー

ありものでは無さそうなのでブックマークレットで作ってみました。

Firefoxで文字数を数えたいページを開いたのち、アドレスバーに以下のコードを全てコピペしてエンターキーで実行してください。

(Chromeはツール - JavaScriptコンソールでctrl+vでペーストしてエンター)

metaタグは<meta>を含めた文字数、bodyは<body></body>を抜いた文字数、alt・titleは属性の値の文字数。

コンマ、カッコはよくわからないのでスルー。

コメント欄を有効にして例を示してもらえれば書きます。

どのような目的で文字数をカウントするのかわかるといろいろ配慮したものが作れると思います。

(一部DOMから文字数をカウントしているのでブラウザによって値が変わる場合があります。目的がわからないとなんとも。)


javascript:(function(){
var xhr = new XMLHttpRequest();
xhr.onreadystatechange = function() {
 if (xhr.readyState == 4) {
 if (xhr.status == 200) {
 var metaCharLen = metaCount(xhr.responseText);
 var bodyCharLen = document.body.innerHTML.length;
 var altCharLen = propCharLen('alt');
 var titleCharLen = propCharLen('title');
 alert('meta: ' + metaCharLen + '\nbody: ' + bodyCharLen + '\nalt: ' + altCharLen + '\ntitle: ' + titleCharLen);
 } else {
 console.log("status = " + xhr.status);
 }
 }
}
xhr.open("GET", location.href);
xhr.send();

function metaCount(text) {
 text = text.replace(/<body>[^]+<\/body>/gi,"").replace(/<script.+<\/script>/ig,"").replace(/<title.+<\/title>/ig,"").replace(/<link.+>/ig,"");
 var len = 0;
 var meta = text.match(/<meta .+>/gi);
 if (!meta) return 0;
 meta.forEach(function(e) {
 len += e.length;
 });
 return len;
}
function propCharLen(propName) {
 var len = 0;
 var elem = document.querySelectorAll('['+propName+']');
 for (var i = 0, n = elem.length; i < n; i++) {
 len += elem[i][propName].length;
 }
 return len;
}
})();
◎質問者からの返答

Cherenkovさん、コメント欄有効にいたしました。 ご回答大変ありがとうございます。

ホームページ(HTMLファイル)上の日本語テキストを外国語への翻訳を依頼するにあたり、翻訳料金設定を日本語文字数に応じて支払う、としたため、ホームページ上の日本語文字数(imgタグのAlt、AタグのTitle等も含む)を計算する必要が出てきまして、今回質問させていただいております。

下記の要望を満たすものが理想的です。

●<Title>
関連質問



●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ