2

SQLServerのRegExp機能を使用して、文字「M」で始まらないすべての文字列を見つける必要がありますが、[^M]%「M」で始まらない文字列を検索するように機能しているようですが、文字列にはまだ必要があります少なくとも 1 文字なので、このパターンは空の文字列を返しません!!

[^M]%ゼロまたは1文字をチェックするパターンはありますか?

psNOT LIKE私の場合、使用はオプションではなく、正規表現パターン以外のwhere句への変更もありません。

4

3 に答える 3

1

あなたは条件を置くことができますOR MyField = ''。SQL Server 2012を使用していますよね?ヘルプページを見ると、正規表現の「または」条件がわかりませんhttp://msdn.microsoft.com/en-us/library/ms179859.aspx

于 2013-03-07T11:28:28.590 に答える
1

[^M]%一致させる 1 つの方法は、入力''以外の文字を追加することです。M

where Fld + '?' like '[^M]%'
于 2013-03-07T11:34:20.530 に答える
1

純粋な正規表現の場合、CLR ユーザー定義関数を使用する必要があります。

正規表現のサポートにより、空白または M 以外の文字の後に 0 個以上の文字が続く\b|[^M].*ことを許可する形式のものを検索できます。

http://msdn.microsoft.com/en-us/magazine/cc163473.aspxが役立つ場合があります。

于 2013-03-07T12:00:45.877 に答える