PostgreSQL 半角英数字の正規表現
こんにちは、Mizutaniです。
PostgreSQLで正規表現ができることをネットで調り、さっそくトライ!
したのですが、検索の仕方が悪かったのか、日本語交じりだとうまくいきませんでした。
なので、基礎的な正規表現の例を紹介します。
ちなみにバージョンは PostgreSQL 8.4です。
◆正規表現はPostgreSQLで用意されているものを用います。
SELECT * FROM table_a WHERE id ~ ‘[0-9]+’;
これを応用します。
◆半角英数字も問題なくチェックできます。
SELECT * FROM table_a WHERE id ~ ‘[0-9a-zA-Z]*’;
◆ただし、このままだと日本語が混じった文(abcあd)は判断できなかったので修正。
SELECT * FROM table_a WHERE id ~ ‘^[0-9a-zA-Z]*$’;
これで半角英数字のチェックはできると思います。
意外と簡単にできますね。
◆ちなみに、
~ (チルダ)は必ずパターンの先頭に書きます。
先頭以外に配置してしまうとリテラルとして解釈されるので注意。
あと $ は行の終わりを意味します。
以上です。
-
前の記事
名古屋名物であって有名でないもの 2011.09.29
-
次の記事
デジタル遺産 2011.09.30