Dim rc As Boolean = "2" Like "*?<*?"
rc が True に等しい理由がわかりません。確か2
にまったく似ていません*?<*?
。
上記のパターンには、次の文字列が必要です
- 少なくとも 3 文字 (2 つの ? と a
<
) <
シンボルは内部のどこかにあります。
私が理解できる限り、Like 演算子<
以外を意味する特殊文字はありません。<
Visual Studio 2010 を使用しています。
2
のような理由を直接説明することはできませんが"*?<*?"
。
あなたのクエリは次のようになります。
*
- 0 個以上の文字に一致?
- 1 つの文字が続く<
<
-キャラクターが続く*
- 0 個以上の文字が続く?
- 1文字で終了あなたが望むロジックのために;
一致する前に少なくとも 3 文字、文字列の内部のどこかに "<" が出現する
その結果、次のクエリが生成されます。
Dim rc As Boolean = "2" Like "???*<*"
どちらが読み取ります。
???
- 3文字以上一致*
- さらに任意の数の文字が続く<
<
-キャラクター が続く*
- さらに任意の数の文字が続く私が知っている直接的な答えではありませんが、それでも同じように役立つことを願っています...
編集:
以下のコメントにお答えします。
あなたは〜したいです;
両側に少なくとも 1 文字ある "<" を含む文字列を見つけます
その結果、次のクエリが生成されます。
Dim rc As Boolean = "2" Like "*?<?*"
これは、結果として False を返します。
Dim rc As Boolean = "<" Like "*?<?*"
でも;
Dim rc As Boolean = "2<2" Like "*?<?*"
true を返します。
これが役立つことを願っています(もっと!)