問題タブ [string-comparison]
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.
c# - C# での文字列比較のパフォーマンス
文字列を比較する方法はいくつかあります。ある方法を別の方法で行うことにより、パフォーマンスが向上しますか?
私は常に次のように文字列を比較することを選択してきました。
しかし、これを行っている人はほとんどいません。どちらかといえば、単純な == 比較を行っている人が多く見られます。これは、私の知る限り、文字列を比較する最悪の方法です。私が間違っている?
また、LINQ クエリ内で文字列を比較する方法に違いはありますか? たとえば、私は次のことをするのが好きです。
しかし、繰り返しになりますが、LINQ クエリでこのような文字列比較を行っている人はほとんどいません。
ruby - 再現不可能な文字列の比較、elsifの失敗を強制
このコードゴルフの質問に答える際に、私は自分の答えに問題に遭遇しました。
私はこれをテストしてきましたが、IRBが正しい動作をしているにもかかわらず、これら2つの比較をコードで機能させることさえできません。ここで本当に助けが必要です。
これがコードです。その下に問題の説明があります。
問題は、の割り当てで発生しnegate
ます。
式の直前の文字がダッシュの場合、trueになるには否定する必要がありますが、条件が機能していません。n == '-'
と、の両方n[0] == '-'
、引用の形式は重要ではなく、毎回FALSEになります。それでも、私はこの正確な比較を使用しており、n == '('
毎回正しく機能します!
何が起こっている?なぜ機能しないのですかn == '-'
、いつn == '('
機能しますか?これは、BOMなしのUTF-8、UNIX改行でエンコードされます。
私のコードの何が問題になっていますか?
java - Javaでの類似性文字列の比較
いくつかの文字列を互いに比較して、最も類似している文字列を見つけたいと思います。どの文字列が他の文字列により類似しているかを返すライブラリ、メソッド、またはベストプラクティスがあるかどうか疑問に思いました。例えば:
- 「キツネがジャンプした」->「キツネがジャンプした」
- 「クイックキツネがジャンプした」->「キツネ」
この比較は、最初のものが2番目のものより類似していることを返します。
私は私が次のようないくつかの方法が必要だと思います:
どこかにそんなものはありますか?
編集:なぜ私はこれをしているのですか?MSProjectファイルの出力をタスクを処理するレガシーシステムの出力と比較するスクリプトを書いています。レガシーシステムのフィールド幅は非常に限られているため、値が追加されると説明が省略されます。生成されたキーを取得できるように、MSProjectのどのエントリがシステムのエントリに類似しているかを半自動で見つける方法が必要です。手動でチェックする必要があるため、欠点がありますが、多くの作業を節約できます。
c# - 大文字と小文字を区別しない StringComparison の違いは?
String.Equals(string a, string b, StringComparison comparisonType) を使用し、'a' と 'b' の大文字と小文字を区別しない場合、使用する適切な StringComparison は何ですか? つまり、StringComparison.CurrentCultureIgnoreCase、StringComparison.InvariantCultureIgnoreCase、および StringComparison.OrdinalIgnoreCase の違いは何ですか? また、それぞれが String.Equals の使用にどのように影響するのでしょうか?
string-comparison - Microsoftプログラミング言語で文字列を比較するときに使用するケースは何ですか?
注:これは、現代の言語には正規表現と大文字と小文字を区別しない文字列比較メソッドが組み込まれていることを認識しているため、歴史的な関心からさらに質問しています。
不明な大文字小文字の2つの文字列を比較すると、Microsoftベースの変換方法が小文字ではなく大文字に最適化されていることを読んだことを思い出すことができます。それで:
よりも速くなります:
これが当てはまる場合、文字列データを検索する必要がある場合は、小文字ではなく大文字で保存する方がよいでしょうか。
bash - バッシュ、ダッシュ、文字列の比較
単純なシェル スクリプトで 2 つの文字列を比較しようとしています。/bin/sh
の代わりにを使用していましたが/bin/bash
、何時間ものデバッグを行った後、sh (実際にはダッシュ) がこのコード ブロックを処理できないことがわかりました。
を使用して文字列を比較するポータブルな方法は何/bin/sh
ですか? != を使用していつでも反対のことができることはわかっていますが、よりクリーンでポータブルな方法について疑問に思っています。
perl - Perlで2つの文字列を比較するにはどうすればよいですか?
Perlで2つの文字列を比較するにはどうすればよいですか?
私はPerlを学んでいます。この基本的な質問をStackOverflowで調べてみましたが、良い答えが見つからなかったので、質問したいと思いました。
python - 2 つの文字列を 'is' で比較 -- 期待どおりに動作しない
2 つの文字列をisで比較しようとしています。1 つの文字列は関数によって返され、もう 1 つの文字列は比較で宣言されているだけです。はオブジェクト ID のテストですが、このページによると、Python のメモリ最適化により、2 つの同一の文字列でも機能します。ただし、次の場合は機能しません。
出力:
これの理由は、関数によって返される文字列が文字列リテラルとは異なる「タイプ」の文字列であるためだと思います。文字列リテラルを返す関数を取得する方法はありますか? ==を使用できることはわかっていますが、ただ興味があります。
php - 文字列で厳密な比較を使用する必要がありますか?
たとえば、次のように使用していることを知っています。
以上:
パフォーマンスを向上させ、いくつかの一般的な間違い(1 == trueなど)を回避できますが、次のような文字列に対して厳密な比較を使用する理由があるかどうか疑問に思っています。
次とまったく同じことをしているようです:
誰かがこの主題にいくらかの光をもたらすことができれば、私はそれを感謝します。
c++ - C++char配列を文字列と比較
私は文字配列を次のような文字列と比較しようとしています:
このifステートメントがtrueとして検証されることはありません...var1を出力すると、「dev」です。nullで終了する文字列と関係があるのではないかと考えていましたが、「dev」とvar1のstrlenは同じです... Iまた、var1=="dev"が"dev"を値ではなくvar1のメモリ位置と比較しているのではないかと考えました。* var1=="dev"はエラーになります....多くのことを試しました。おそらくsaavyc++開発者のための簡単な解決策です(私は長い間c ++をコーディングしていません)。
編集:私たちは試しました
と
ありがとう
編集:自宅でテストした後、同僚がデータ型を文字列に変更することを提案します。彼は大きなサイズのchar配列を文字列と比較していたと思います。sizeof、strlenなどを出力するプログラムを作成して、作業に役立てています。助けてくれたみんなに感謝します。