2023年01月10日
川俣晶の縁側ソフトウェア技術雑記total 1168 count

.NETのchar型にアスキーの文字種を判定するメソッドが追加された

Written By: 川俣 晶連絡先

 遠い昔、おそらく.NET Framework 1.xの時代に以下のようなライブラリを作成して使用していた。

using System;

namespace SimpleCharTestLib

{

    public class SimpleCharTest

    {

        public static bool IsAlpha(char ch)

        {

            return (ch >= 'A' && ch <= 'Z')

                || (ch >= 'a' && ch <= 'z');

        }

        public static bool IsDigit(char ch)

        {

            return ch >= '0' && ch <= '9';

        }

        public static bool IsAlphaOrDigit(char ch)

        {

            return IsAlpha(ch) || IsDigit(ch);

        }

    }

}

 こんなものを書いた理由は、単にASCII文字を判定したいだけなのに、ライブラリのメソッドは国際化の設定次第で他の文字もアルファベットや数字として扱う場合があるからだ。

 そのあたりは理想主義と現実との間にあるねじれだった。

 ところが、このねじれが突然解消されてしまったのだ。

 .NET 6でchar型にIsAsciiメソッドが追加され、.NET7でIsAsciiDigit、IsAsciiHexDigit、IsAsciiHexDigitLower、IsAsciiHexDigitUpper、IsAsciiLetter、IsAsciiLetterLower、IsAsciiLetterOrDigit、IsAsciiLetterUpperが追加された。

 これが便利な改善であろうことは言うまでもない。

 それに似たものを自作して使っていたのだから。

 彼らと自分は同じ世界に生きている……と思える瞬間である。

補足 §

 とはいえ、これが【他の国の事情なんか知ったことではない。ASCIIだけあれば良い】という【主義者】を増長させねば良いのだが。IsAsciiDigitとIsDigitは目的に応じた適切な使い分けが必要なのだ。

Facebook

このコンテンツを書いた川俣 晶へメッセージを送る

[メッセージ送信フォームを利用する]

メッセージ送信フォームを利用することで、川俣 晶に対してメッセージを送ることができます。

この機能は、100%確実に川俣 晶へメッセージを伝達するものではなく、また、確実に川俣 晶よりの返事を得られるものではないことにご注意ください。

このコンテンツへトラックバックするためのURL

https://mag.autumn.org/tb.aspx/20230110142952
サイトの表紙【技術雑記】の表紙【技術雑記】のコンテンツ全リスト 【技術雑記】の入手全リスト 【技術雑記】のRSS1.0形式の情報このサイトの全キーワードリスト 印刷用ページ

管理者: 川俣 晶連絡先

Powered by MagSite2 Version 0.36 (Alpha-Test) Copyright (c) 2004-2021 Pie Dey.Co.,Ltd.