文字数カウントは奥が深いよ。日本語より𓅇エジプト😇 #javascript #code #プログラミング #unicode

2022.10.05

Logging

おはようございます、先日(日曜日のこと)は久しぶりに本屋さん巡りしていました😋。本屋📖は良いですね落ち着きます。

さて、文字コードのカウントは奥が深いなって話を記載していきます。人目線からすれば文字をカウントするという至って簡単な話にですが、PC(コンピューター)にとっては奥が深いです・・・日本語漢字も面倒だけどエジプト系の象形文字系(unicode)は本当に面倒そうです。まだ、作りかけですがツイッターの用な文字コードのカウントするjavascriptコードを書きましたのでサンプルコードとしてご使用ください

※WindowsOSの環境下でChromeブラウザ動作させ検証しました。コピペ文字には対応していません😇。UTF-8 ではない違う文字コードを貼り付けてみてください、変なことになると思います😂。例えばEUC文字コードだとか・・・。

動作サイトはこちらです。

        function moji(o) {
            let m = o.nextElementSibling;
            //ads
            let h = ((o) => {
                let l = o.value.match(/(https?:\/\/[a-z|A-Z|0-9|\-|_|%|\.|\/]{0,})/giu);
                let ml = l ? ((l) => {
                    return sum = l.reduce((s, e) => {
                        return s + e.length;
                    }, 0);
                })(l) : 0;
                return l ? {
                    len: (l.length * 23),
                    mlen: ml
                } : {
                    len: 0,
                    mlen: ml
                };
            })(o);
            //zenkaku            
            let k = ((o) => {
                let l = o.value.match(/[^\x20-\x7e]/giu);
                let ml = l ? ((l) => {
                    return sum = l.reduce((s, e) => {
                        return s + e.length;
                    }, 0);
                })(l) : 0;
                return l ? {
                    len: (l.length * 2),
                    mlen: l.length
                } : {
                    len: 0,
                    mlen: ml
                };
            })(o);
            m.innerHTML = "【 " + (o.value.length + h.len - h.mlen + k.len - k.mlen) + "文字{半角/280} 】";
            if ((o.value.length + h.len - h.mlen + k.len - k.mlen) >= 280) {
                m.innerHTML = "<span class='text-danger'>【 " + (o.value.length + h.len - h.mlen + k.len - k.mlen) + "文字{半角/280} 】</span>";
            }
        }
                    <label for="my-textarea" class="h3">文字を入力してください。</label>
                    <textarea id="my-textarea" class="form-control" oninput="moji(this);" name="" rows="3"></textarea>
                    <span class="h3"></span>

尚、サンプルコードは1バイトを一文字としてカウントしていきます、そしてURL文字はどんなに長くても23文字にカウントされます、これはTwitter社の仕様と合わしています。URL文字はURL短縮が行われ23文字の短縮URLが生成されるからその様にカウントしているのですが、なんか本物と違うですよね挙動が・・・🙇‍♂。因みに絵文字がどのようにカウントされるかは確認していません。

UTF8では絵文字(unicode)を3バイトで表記させているそうです。昔、UTF-8は2バイトで表現しているとか習っていたのですが、それはカナリ古い知識だったみたいです😇。

タグ

8, Chrome, Code, EUC, javascript, PC, Unicode, UTF-, WindowsOS, エジプト, カウント, コード, こと, コピペ, コンピューター, サンプル, ツイッター, ブラウザ, プログラミング, 久しぶり, 人目, 使用, 先日, 動作, , , 対応, , 文字, 日曜日, 日本語, 本屋, 本当, 検証, 漢字, 環境, , 簡単, 記載, , 象形, 面倒,

映画、百花を観てきましたので感想を残しときます。

2022.09.15

Logging

おはようございます。昨日は久しぶりに映画を観に行きました。来週も水曜日か火曜日に観に行くつもりです。

さて、百花を観てきましたので感想を残しときますね。この映画、感動というよりは切ない気持ちになったのと、認知症という症状を凄くリアルに描いていましたし、認知症を通して人を描いていたように感じます。人ってなんだろうね本当に…。

『百花』予告【2022年9月9日(金)公開決定】

まとめ。とにかく映画を観て切ない思いになりました、感動するというストーリーではないですが、心に残る映画であり、心に染みる映画になっていると思います。

尚、上映期間中、観えなくともこの映画は耐え得る作品ですので、是非観てみてくださいな😌。

タグ

2, 7, com, https, kacpw, RF-g, watch, www, youtube, ストーリー, つもり, まとめ, リアル, 上映, 久しぶり, , 作品, , 感動, 感想, 映画, 昨日, 期間, 本当, 来週, 気持ち, 水曜日, 火曜日, 症状, 百花, 認知,

この人知っていますか?賢い面白い、固定概念を崩す人!!

2021.12.06

Logging

甘いものが好きなのでおやつテロは殆ど甘いものが多いです。

この人、賢くて面白いなと感じます。?
前置き:沈思黙考とは黙ってじっくりと深く物事を考え込むことです(動画の中で使われている言葉)。

さて、土曜日(2021年12月4日)にこの人の出演している動画をかなり時間を費やして見ました。見ていただければご理解頂けると思いますが、物腰やわらかく人の意見などを否定しているけど、否定した理由が的を得た回答だなと感じます。そしてリカバリーやフォローする技術が高い、話術に長けているので聞きやすい人といった印象の方。

話の内容もとても面白くて大事なことも言っているような気がします。唯、それが多くの人(万人受け)に受け入れるかどうかは分かりませんが?。自分としては賢い人だなと感じました。

【成田悠輔と学ぶ】イノベーションとは何か?真に人類を進歩させる発明を「ボタン」で紐解く【成田悠輔/切り抜き/なりぬき/スピーチ/イノベーション】

そんな感じで久しぶりに自分としてはテンション上がる土曜日になりました。成田 悠輔さんはこれから先、メディアにも多く登場して征く気がしますから、ご活躍に目が離せません。因みにYOUTUBE見ていて、この人面白くて賢いなと思えたのは安宅和人さん、猪子寿之さん以来かなと思います。https://www.youtube.com/c/keizailabo

運が全て!?成功者の共通点は◯◯癖と語る成田悠輔【成田悠輔/切り抜き/ひろゆかない/若新雄純】

タグ

12, 2021, 4, おやつ, かなり, こと, これ, ご理解, それ, テロ, テンション, フォロー, メディア, もの, リカバリー, , , 久しぶり, , 人受け, , 内容, 出演, 前置き, 動画, 印象, 否定, 回答, 固定, 土曜日, 多く, 大事, 悠輔, 意見, 感じ, 成田, 技術, , 時間, 概念, 殆ど, , 沈思黙考, 物事, 物腰, 理由, 登場, , 自分, 言葉, , 話術,

kotlinで開発したアプリを申請しました。予約投稿なので報告が遅れています。

2021.11.10

Logging

kotlinで開発したアプリを申請しました。予約投稿なので報告が遅れています。このアプリをiosに移植しようと思ったのですが、何やら面倒くさそうなので当分、アンドロイド端末でのアプリ開発をして、その後、Swift言語で開発しようかなと思っていたのが昨日までの自分の想い。今日いろいろと調べていたら、どうもクロスプラットフォーム開発するなら、フェイスブックが開発したReact Nativedeで開発したほうが良さげだと。学習コストはそれ程高くないような気がしてます。Expoなら尚更・・・!?

React Native Tutorial – Getting set up with Expo

何ヶ月か前にクロスプラットフォーム開発が出来るFlutterに手を出していたのだけど一つアプリをリリースしてからは勉強していませんでした。今回、久しぶりにアプリを作ろうかと考えて手を動かして、何となく自分がアプリ開発で身につきやすいのは今まで使用した言語の延長線上にあるものかなと思い始めました。なのでReact Nativeで開発していきたいなと今は思っています(浮気性・・・?)。

そして何よりReact Nativeは機械学習の要素も取り入れることが出来たり、カメラや位置情報も取れデーターベースも使えるサンプルもネットに落ちているので何とかなりそうだということ。そして求人情報などにもReactを経験した人は重宝されるみたいなので勉強して損はないかなととも思っています(React Nativeを勉強すれば自ずとReactの勉強にもなるので一石二鳥かなと個人的には思っています)。

※浮気性になった理由はkotlinでアプリ開発していて三項演算子が使えないことを知り、気持ちが萎えた事が一番の理由でkotlin開発よりReact Nativeでアプリ開発しようという気持ちなったのです?。それぐらい三項演算子が使えないのは痛い。バージョンが上がれば使えるようになるかもしれないけれども・・・。

因みに海外ではFlutterの方が人気です、日本もそうなるかは未知数です。

タグ

Expo, flutter, iOS, Kotlin, Nativede, react, swift, アプリ, アンドロイド, いろいろ, クロス, コスト, フェイスブック, プラットフォーム, もの, リリース, 一つ, 久しぶり, 予約, 今回, 今日, 何ヶ月, 使用, , 勉強, 報告, 学習, 尚更, 延長, , , 投稿, 昨日, , 申請, 移植, 端末, 線上, 自分, 言語, 開発,

遅いぐらいだけどES2015(ES6)が使い出せそう。js(java script)の話。

2021.09.30

Logging

今日は清々しい朝ですね、久しぶりに高知県、晴れましたね。

さて、遅いぐらいだけどES2015(ES6)が使い出せそう。js(java script)の話。田舎では古いブラウザを使用している人が、いたりしてIE(インターネットエクスプローラー)をたまに使用している。だけど今回、 WindowsがWindows11にアップグレードされる事により、IEは廃止されるので堂々とES2015(ES6)以降の技術が使用できるようになる。これで現場は結構、自由に動けるようになるとおもいます。

6.2: Classes in JavaScript with ES6 – p5.js Tutorial

それぐらいIEは一昔前のものだと思っています・・・。さらばIE!!

ES6ではやっとclassが使用できるようになっているので開発者としては、とても便利ですよ。今までfunctionで書いていたものをclassで置き換えたいぐらいです!!因みにclassの中の関数にはfunctionと記載すると動かないので関数名だけを記載しましょう・・・。

また、ES6対応のブラウザ一覧表はこちらから参照してください。
http://kangax.github.io/compat-table/es6/

最後にサンプルとしてコードを記載します。
https://zip358.com/tool/demo42/

class main{
    constructor(foo){
        this.name = foo;
    }
    view() {
      document.getElementById("demo42").innerHTML  =  this.name;
    }
}
const m = new main("ES6");
m.view();

タグ

11, 2015, 6, 7, 8, class, com, ES, function, https, IE, java, JS, L-, script, T-HGdc, watch, Windows, www, youtube, アップ, インターネット, エクスプローラー, グレード, これ, それぐらい, たま, ブラウザ, もの, , 久しぶり, , , 今回, 今日, 以降, 使用, 便利, 廃止, 技術, , , 現場, 田舎, 自由, , 開発者, 高知県,

C#でwebview2を使用して情報を収集するためのサンプルコード。

2021.08.22

Logging

今日は日曜日ですね。先日は久しぶりにお天気になったので外へ出ていっておりました。これを投稿する日は晴れているでしょうか。

さてjavaを勉強している合間にC#も勉強しております。javaを勉強しているとC#に応用が効くのでとてもやりやすいですね。webview2というオブジェクトをインストールして使用しました、VC#2019で開発しているのですが既存のwebBrowserというオブジェクトは全然というほど役に立ちません。例えばYahooのトップページを開いたらjavascriptエラーのアラートが表示されたりして動作してくれません。おそらくwebBrowserというオブジェクトを使用して何か開発している人はあまりいないじゃないかなと思います。

今回、作成したサンプルコードはYahoo!ニュースのITニュースのタイトルとリンクを収集するものですが、この方法を応用してブラウザの作業を自動化することはそれ程難しくないと思っています。

サンプルコードの一部を記載します=ボタンをクリックする場所に埋め込んだソースコードになります。因みにawaitを使用しているのでボタンクリックにはasyncしてあげる必要があります。

※注意事項としてYahoo!ニュースのソースコードが変わればそれに対応したコードを記載する必要があります。

C# webview2でテスト
PM> Install-Package Microsoft.Web.WebView2 -Version 1.0.902.49
        async private void button1_Click(object sender, EventArgs e)
        {

         var result = await webView21.ExecuteScriptAsync(
                "(()=>{let obj = document.querySelectorAll(\"#uamods-topics > div > div > div > ul > li > a\");" +
                "let str = \"\";" +
                "for (let i = 0; i < obj.length; i++)" +
                "{" +
                "str += obj[i].innerText + \"[\" + obj[i].href + \"],\";" +
                "}" +
                "return str;" +
                "})();"
             );
            richTextBox1.Text = result.Replace(",","\n").Replace("\"","");
        }

タグ

2, 2019, IT, java, javascript, VC++, webBrowser, webview, Yahoo, アラート, インストール, エラー, オブジェクト, コード, こと, これ, サンプル, タイトル, ため, ドップ, ニュース, ブラウザ, ページ, もの, リンク, 久しぶり, , 今回, 今日, 作成, 作業, 使用, 先日, 勉強, 動作, 収集, 合間, , 天気, , 応用, 情報, 投稿, 方法, 既存, , 日曜日, 自動, 表示, 開発,

Anglesharpというライブラリの話。

2021.03.13

Logging

久しぶりに技術的なお話の記事を書きます。AnglesharpというのはC#などでスクレイピングするときにスクレイピングを補助してくれるライブラリで結構人気のあるライブラリなるようです。スクレイピングするコードは下記のようになります。この書き方が至ってシンプルで書きやすいのではないかなと思っています。

http://anglesharp.github.io/

var Url = $"https://zip358.com/";
var querySelector = $"#index_post_list > li.clearfix.num1.type1 > div > h3";
var document = BrowsingContext.New(Configuration.Default.WithDefaultLoader()).OpenAsync(Url).Result;
var element = document.QuerySelector(querySelector);
Console.WriteLine($"blogtitle is {element.InnerHtml}");

このライブラリはとても良いのですが、一つ問題があります。スクレイピングするのですが・・・これjavascriptがOFFの状態でスクレイピングされるのですね。どうもこのコードではJSがONにはならないようですね。因みに自分はそのことを知っていなかったのでどハマリしました。大手の検索サイトなどはjavascriptがOFFの状態でも閲覧できるようになっている事を知りました、試しにブラウザをOFFの状態にしてみるとソースコードがかなり違っていてJSのONの状態とは情報が差異がある事が理解できると思います。

Anglesharpのコンフィグ設定(init)でエージェントなどを設定してあげると上手くJSがONの状態をスクレイピングすることが可能なのかもしれません。動画を見る限りではまだかもしれません・・・。

AngleSharp NET Headless Browsing

タグ

, , 358, anglesharp, BrowsingContext, clearfix, com, Configuration, default, div, document, element, gt, https, index, li, LIST, new, num, OpenAsync, POST, QueryS, querySelector, quot, result, type, url, var, WithDefaultLoader, zip, お話, コード, シンプル, スク, とき, ピング, ライブラリ, レイ, 下記, 久しぶり, 人気, 書き方, 補助, 記事, ,

今日は偏頭痛がかなり凄い日?

2020.11.27

Logging

今日は偏頭痛がかなり凄い日なので、ブログ書くのも結構大変なので久しぶりにブログを書かないでおこうと思っていたのだけど、どれぐらい偏頭痛が痛いのかを絵にしてみたのですが、あんな柔らかいタッチの絵では通じないなと思いつつも、絵を記載しました。因みにこの頃、偏頭痛の薬を併用するようにしました。バファリンではなく、もう一つの方を購入したのですが確かに飲むと飲まないとでは違いがあるのですが、やはり薬局の薬には限界があるのか、たまに飲んでいるのに痛みを感じるのです。因みに何故、偏頭痛が起こるのかは未だに解明されていないのだとか・・・・。

一説では脳の血管が神経に触ることにより、痛みが生じるのだとか、、。だとかじゃなくて、そろそろ解明してほしい気がします。あの567が解明されたように医療関係者の知恵を総動員すればこの世にある病気や疾患はまじで99%治せる病なんじゃないかとこのごろ思っています。人類の叡智とスパコンと人工知能でなんとか、偏頭痛を直して頂きたい。かなり辛い!!

タグ

567, 99, かなり, こと, この世, ごろ, スパコン, タッチ, たま, どれぐらい, バファリン, ブログ, まし, もう一つ, 一説, 久しぶり, 人工, 人類, 今日, 併用, 偏頭痛, 医療, 叡智, 大変, , , 未だ, , 疾患, , 病気, 知恵, 知能, 神経, , 総動員, , , 薬局, 血管, 解明, 記載, 購入, , 違い, 関係者, 限界, ,

まともな考えが消えかけている。

2020.08.09

Logging

暑い日々が続きますね、高知県では今日は雨か曇りらしいです。久しぶりに雨なので一コマ漫画(絵)をお休みしてYOUTUBEチャンネルの紹介です。(※追記:めちゃめちゃ晴天ですね)

YOUTUBEで茂木健一郎さんが語っているのが動画がこの頃伸びてきているのが救いだなと思う。まだまともな考えが少なからずいるのは救いかと思うけど・・・。

軽薄な日本にサヨウナラ

やっぱ社会ではそういうのが、受けているだろうなと思う今日このごろですね。茂木健一郎さんはパロディーからランニング、Vlogまでいろいろな事を公開しています。自分はいろいろな知識を解説していることや対談している動画が好きで見ています。

自動運転車の倫理問題

茂木健一郎さんのYOUTUBEチャンネル登録はこちらから
https://www.youtube.com/channel/UCIvVJaNmUFJ8MKpyBfgslCg

タグ

Vlog, youtube, いろいろ, お休み, こちら, こと, チャンネル, パロディー, まとも, ランニング, 一コマ, 久しぶり, , 今日, 今日このごろ, 公開, 動画, 対談, 日々, 晴天, 漫画, 登録, 知識, 社会, 紹介, , 自分, 茂木健一郎, 解説, 追記, , , 高知県,

ブログ変わる変えます。

2020.07.19

Logging

ブログ変わる変えます。一コマ漫画形式に大きく転換します。プログラムやYOUTUBE関連も引き続き書いていきますが、雑記カテゴリーは一コマ漫画の挿し絵とテキストで更新していきます。

ちゃんと絵を描かなくなって10年ぐらい経過していますが、また初心に戻って絵を描いていきます。いまの路線で続けていくのが一番楽なのですが、4?5年続けてあまり軌道に乗らなかったので一コマ漫画で日々、描いていきます。

今までのリピーター様で前が良かったと思うことがあるかもしれませんが、雑記カテゴリーが一番、人気がなく低迷しているのである意味テコ入れです。

そして昨日までは、収益が日々なにか入っていたのですが昨日は久しぶりに無収入になってしまったのでここで思い切ったわけです。数ヶ月で安定した収入が得れる状態に戻して行きたいと思います。

タグ

10, 4, 5, youtube, いま, カテゴリー, ここ, こと, テキスト, テコ入れ, ブログ, プログラム, リピーター, わけ, 一コマ, 久しぶり, 人気, , 低迷, 初心, , 収入, 収益, 安定, 形式, 意味, 挿し絵, , 日々, 昨日, 更新, 漫画, 状態, 経過, , 路線, 軌道, 転換, 関連, 雑記,

映画、検察側の罪人を観てきました。

2018.08.25

Logging


http://kensatsugawa-movie.jp/


久しぶりに見応えたっぷりの映画を観てきました、
結構それだけでかなり満足感があります。
ただ、この映画は感動するとかいうストーリー展開はありませんし
悔しい映画でもありません、正義とはなんだということを
この映画を通して考える映画になっていることは
間違いないですね。
※結構、真面目な映画であります。

映画『検察側の罪人』予告

 

タグ

0, 07, 1033207577276952576, 2, , 358, 4167907844, asin, com, FBXJVM, http, jp, kensatsugawa-movie, status, Twitter, wzvmvESzuv, youtube, zip, かなり, クリア, こと, ストーリー, セット, それだけ, なん, ファイル, フライヤー, 久しぶり, 二宮和也, 展開, 感動, 映画, 木村拓哉, 検察, 正義, 満足感, 真面目, 結構, 罪人, 見応え,