お世話になっております。
日本語で濁点付きの文字列を作成する場合には、以下のように
「前の文字と合成した文字」として入力するか、「単独の濁点記号」として入力」
することになります。後者はレアーケースだと思いますが。
データ
データ
teratailの画面では同じに見えますが、上記の2行を選択コピーしてエディターなどにコピーすると別の文字列だと分かると思います。
PowerShellで以下のような実験をしてみると、これらの違いが検出されず、
同じ文字列として判定されてしまいます。
PowerShell
1PS D:\WorkShop> $a = "データ" 2PS D:\WorkShop> $b = "データ" 3PS D:\WorkShop> $a, $b 4データ 5データ 6PS D:\WorkShop> $a -eq $b 7True 8PS D:\WorkShop> [String]::Compare($a, $b) 90 10PS D:\WorkShop>
上記のコードだと同じに見えてしまうので、画像キャプチャーも貼り付けます。
おそらく、PowerShellが気を利かせて同じ文字だと判定してくれている
と思うのですが、私は事情がありまして別の文字列として判定したいのです。
どのようにすればこれらの文字列比較で「False」を返すようにできるのでしょうか?
よろしくお願い致します。
バイト列に直して比較してみてください。
回答1件
あなたの回答
tips
プレビュー