問題タブ [case-insensitive]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
5 に答える
88829 参照

unix - less を使用してパターン修飾子を使用して大文字と小文字を区別しない検索を行うにはどうすればよいですか?

これを行う唯一の方法は、最初に less を実行するときに -i パラメーターを渡すことのようです。このようなものを作るための秘密のハックを知っている人はいますか

0 投票する
16 に答える
108326 参照

python - Python 文字列で大文字と小文字を区別しない

大文字と小文字を区別せずにPythonで文字列を比較する最も簡単な方法は何ですか?

もちろん、(str1.lower() <= str2.lower()) などを行うこともできますが、これにより 2 つの追加の一時文字列が作成されます (明らかな alloc/gc オーバーヘッドを伴います)。

C の stricmp() に相当するものを探していると思います。

[さらにいくつかのコンテキストが要求されたので、簡単な例で説明します:]

文字列の長いリストをソートしたいとします。theList.sort() を実行するだけです。これは O(n * log(n)) 文字列比較であり、メモリ管理はありません (すべての文字列とリスト要素はある種のスマート ポインターであるため)。あなたは幸せです。

ここで、同じことをしたいと思いますが、大文字と小文字は無視します (単純化して、すべての文字列が ASCII であるとしましょう。したがって、ロケールの問題は無視できます)。theList.sort(key=lambda s: s.lower()) を実行できますが、比較ごとに 2 つの新しい割り当てが発生し、ガベージ コレクターに重複した (縮小された) 文字列の負担がかかります。このようなメモリ管理の各ノイズは、単純な文字列比較よりも桁違いに遅くなります。

ここで、stricmp() のようなインプレース関数を使用して、次のようにします。あなたは再び幸せです。

問題は、Python ベースの大文字と小文字を区別しない比較には暗黙的な文字列の重複が含まれるため、C ベースの比較 (おそらくモジュール文字列) を見つけることを期待していました。

そのようなものは見つからなかったので、ここで質問します。(これで質問が明確になることを願っています)。

0 投票する
12 に答える
318464 参照

javascript - 大文字と小文字を区別しない検索

JavaScriptで2つの文字列を使用して、大文字と小文字を区別しない検索を実行しようとしています。

通常は次のようになります。

フラグは/i大文字と小文字を区別しません。

しかし、2番目の文字列を検索する必要があります。フラグがなければ、完璧に機能します。

上記の例にフラグを追加する/iと、変数「searchstring」にあるものではなく、searchstringが検索されます(次の例は機能しません)。

どうすればこれを達成できますか?

0 投票する
8 に答える
24490 参照

java - マップを持つ良い方法はありますか大文字と小文字を区別しない get と put ?

Map<String, ?>ケースを無視してgetとputを行う良い方法はありますか?

0 投票する
7 に答える
57301 参照

javascript - JavaScriptで大文字と小文字を区別しない文字列置換?

JavaScript文字列内の特定のキーワードを、大文字と小文字を区別せずに強調表示する必要があります。

例えば:

  • highlight("foobar Foo bar FOO", "foo")戻る必要があります"<b>foo</b>bar <b>Foo</b> bar <b>FOO</b>"

どのキーワードでも機能するコードが必要なので、のようなハードコードされた正規表現を使用する/foo/iだけでは十分な解決策ではありません。

これを行う最も簡単な方法は何ですか?

(これは、タイトルで詳しく説明されているより一般的な問題の例ですが、具体的で有用な例で取り組むのが最善だと思います。)

0 投票する
11 に答える
951812 参照

python - 大文字と小文字を区別しない文字列比較を行うにはどうすればよいですか?

Pythonで大文字と小文字を区別しない文字列比較を行うにはどうすればよいですか?

非常にシンプルで Pythonic な方法を使用して、通常の文字列とリポジトリ文字列の比較をカプセル化したいと思います。また、通常の python 文字列を使用して、文字列によってハッシュされた dict の値を検索できるようにしたいと考えています。

0 投票する
4 に答える
705 参照

sql - Openbase SQL の大文字と小文字の違い ('=' と LIKE) - MySQL への移植

以前は Openbase 7 を使用していたアプリを、MySQL 5.0 を使用するように移植しています。

OB 7 では、大文字と小文字の区別に関してかなり不適切に定義された (つまり、文書化されていない) 動作がありました。これは、MySQL で同じクエリを試したときに初めてわかりました。

OB 7 は、「=」を使用したルックアップを「LIKE」を使用したルックアップとは異なる方法で処理しているようです。「a」と「A」の 2 つの値があり、WHERE f="a" でクエリを作成すると、「」のみが検出されます。 「A」フィールドではなく、「a」フィールド。ただし、「=」の代わりに LIKE を使用すると、両方が検出されます。

MySQL でのテストでは、非バイナリ照合 (latin1 など) を使用している場合、"=" と "LIKE" の両方が大文字と小文字を区別せずに比較されることが示されました。ただし、OB の動作をシミュレートするには、大文字と小文字を区別する "=" のみを取得する必要があります。

現在、すべてのクエリに大量の LOWER() 関数呼び出しを追加せずに、MySQL でこれを処理する方法を見つけようとしています (たくさんあります!)。

MySQL DB を完全に制御できます。つまり、照合モードを好きなように選択できます (幸いなことに、テーブル名と一意のインデックスは大文字と小文字の区別の問題の影響を受けません)。

最小限のコード変更で MySQL で OpenBase の動作をシミュレートする方法について何か提案はありますか?

(ソースコードに LOWER 呼び出しを追加するためのいくつかのスマートな正規表現の置換がうまくいく可能性があることはわかっていますが、別の方法を見つけたいと思います)

0 投票する
4 に答える
2531 参照

winapi - Win32 ファイル名の比較

大文字と小文字を区別しないファイル名を処理するときに Win32 が使用するカルチャ設定を知っている人はいますか?

これはユーザーのカルチャに基づいて変化するものですか、それとも Win32 が使用する大文字と小文字の規則はカルチャ不変ですか?

0 投票する
29 に答える
1060489 参照

c# - 大文字と小文字を区別しない 'Contains(string)'

次の戻り値を true にする方法はありますか?

大文字と小文字の区別を設定できる過負荷はないようです。現在、私は両方を大文字にしていますが、それはばかげています (これは、上下のケーシングに伴うi18nの問題を指しています)。

アップデート

この質問は古くからあり、それ以来、完全に調査したい場合は、非常に広大で難しいトピックに対して簡単な回答を求めていることに気付きました.

ほとんどの場合、単一言語の英語コード ベースでは、この回答で十分です。ここに来るほとんどの人がこのカテゴリに分類されるため、これが最も人気のある回答だと思います。

ただし、この回答は、両方のテキストが同じ文化であり、その文化が何であるかを知るまで、大文字と小文字を区別しないテキストを比較できないという固有の問題を引き起こします。これはあまり一般的ではない回答かもしれませんが、より正しいと思うので、そのようにマークしました。

0 投票する
9 に答える
427525 参照

python - 再コンパイルせずに大文字と小文字を区別しない正規表現?

Python では、以下を使用して大文字と小文字を区別しないように正規表現をコンパイルできますre.compile

同じことをする方法はありますかre.compileiドキュメントに Perl のサフィックス (例: )のようなものが見つかりませんm/test/i