C#ではWindowsレジストリを参照すれば、指定拡張子に関連付けられた実行ファイルのパスを取得できます。 HKEY_CLASSES_ROOT\.拡張子でProgIDを取り、HKEY_CLASSES_ROOT\ProgID\shell\op
続きを読む »C#で文字列を切り出すならSubstringとSplitの併用が基本で、開始位置か区切り文字のどちらを主軸にするかで選ぶと効率的です。 前後関係が複雑な場合はRegexで抽出パターンを定義すると保守性が上がり、コードの意図も明確になります。
続きを読む »文字列がひらがなだけか判定するには、C#でRegex.IsMatch(str, @"^\p{IsHiragana}+$")を使うのが簡単です。 Unicodeプロパティを活用するため濁点付き文字も網羅できます。 正規表現が使えない場合は各文
続きを読む »C#で文字列をアルファベット順に並べ替える最短ルートは、文字列をOrderBy(c => c)で並べ替え、new stringで再構築する方法です。 大文字小文字を無視したい場合はあらかじめchar.ToLowerやToUpperで統
続きを読む »C#で英字のみか確認するなら、LINQのAll(char.IsLetter)が最短ルートです。 ASCIIに限定する場合は正規表現@"^[A-Za-z]+$"や文字コード比較でも判定できます。 多言語や全角も含めるならUnicode対応のI
続きを読む »複数の文字列を比べるなら、用途で方法を選ぶのが効率的です。 単純一致は==で十分ですが、大小文字やカルチャを制御したいときはEqualsやStringComparisonを付けたstring.Equalsを使います。 並べ替えや順序判定には
続きを読む »C#で部分一致を調べるならString.Containsが第1候補です。 大文字小文字を無視したい場合はStringComparison.OrdinalIgnoreCaseを指定し、全角半角やひらがなカタカナも統一したい場合はCompare
続きを読む »C#で大文字小文字を無視して文字列を比べたいならstring.Equalsやstring.CompareにStringComparison.OrdinalIgnoreCaseを与えるのが手軽で高速です。 カルチャ依存の比較が必要なときはCu
続きを読む »C#で文字列の大小を比べるなら、基本はstring.Compareを使い、結果が負なら左が小、0なら等しい、正なら左が大きいとなります。 大小関係を安定させたい場合はStringComparison.OrdinalかOrdinalIgnor
続きを読む »C#で前方一致を調べるならStartsWithを使うのが簡単で高速です。 StringComparison.OrdinalIgnoreCaseを指定すれば大文字小文字を無視した安全な比較になり、カルチャ依存の誤判定を防げます。 部分一致が不
続きを読む »ワイルドカード比較をC#で行うなら、Regex.IsMatchを使い*や?相当を正規表現の.*や.に置き換える方法が最も手軽です。 パターンをエスケープして必要箇所だけ変換すればSQLのLIKE同様の柔軟性が得られ、大小文字の扱いもRege
続きを読む »C#文字列 比較では用途で選択が肝心です。 単純一致なら==で十分ですが、カルチャや大文字小文字を無視したいときはEqualsにStringComparison.OrdinalIgnoreCaseを渡すと安全です。 並び順が要る場合はstr
続きを読む »文字列を日付に変換するなら、手軽さ重視でDateTime.Parse、形式を厳密に合わせるならParseExact、失敗時もアプリを止めたくないならTryParseが適しています。 カルチャを指定すれば和暦や外国語の月名も認識でき、期待どお
続きを読む »C#で部分文字列を入れ替えるなら、まず文字列は不変なのでReplaceは新しい文字列を返す点を押さえておくと安心です。 単純な置換はString.Replace、大文字小文字を無視したりパターンで抜く場合はRegex.Replaceを使うと
続きを読む »文字列の挿入は文字列補間が速く読みやすいのでまず選びます。 旧版や大量処理ではString.FormatやStringBuilderに切り替えると効率が保てます。 短い連結なら+演算子も許容範囲ですが多用すると速度が落ちます。 パスなどバッ
続きを読む »前後の余計な空白はC#のTrimでまとめて取り除けます。 先頭だけならTrimStart、末尾だけならTrimEndが便利です。 削りたい文字をchar[]で渡せばスペース以外も同時に処理でき、自前のループを組む手間を減らせます。 Trim
続きを読む »c#で文字列を数値に変換する際、マイナスを含む場合でもint.ParseやConvert.ToInt32でそのまま整数に変換できます。 ただし失敗時には例外が出るため、不確定な入力にはint.TryParseを使うと安全です。 Number
続きを読む »文字列を数値に安全に変換したいなら、int.TryParseなどのTryParse系が最適です。 bool値で成功可否を受け取り、成功時はout引数に値が入り、失敗しても例外が出ず処理を続行できます。 intだけでなくdoubleやdeci
続きを読む »C#では文字列を数値へ安全に変換するにはint.TryParseを使い、成功時に得たint値をToString("X")で16進数へ一発で変換できます。 例外を避けられ、ユーザー入力やファイル読込後の値をそのまま16進表示へ流せるので効率的
続きを読む »