2

英数字以外の特殊文字が含まれている場合、列の値を取得する必要があります。

元:select name from data;

name

ACD12
A12DD
A_C12
A@CD
AB_M1
123AB

上記のテーブルから次のデータを取得するには、正規表現を記述する必要があります。

A_C12
A@CD
AB_M1
4

1 に答える 1

3

「少なくとも1つの英数字以外の文字を含む文字列」という式が必要です。

SELECT name FROM table1 WHERE name ~ '[^[:alnum:]]'

参照:http ://sqlfiddle.com/#!12 / 2edd5 / 15

\Wアンダースコアと同等であり、アンダースコアが必要ないため、使用[^[:alnum:]_]していません。正規表現に関するPostgreSQLのドキュメントを参照してください。

于 2012-11-05T10:48:04.860 に答える