PostgreSQLの正規表現
正規表現は、Java、.NET、PHP、Perl …またはPostgreSQLのようなプログラミング言語にとって非常に強力なツールです。 +ここでは、PostgreSQLで正規表現を使用する方法を示すためのいくつかの基本的な例を書いています。
1)
isdigit関数
– この関数は、PostgreSQLには存在しません。これは、他のデータベースの組み込み関数です。 +これはnumber allowだけを検証するのに非常に便利な関数です。しかし、PostgreSQLではisdigit関数を自分で作成することができます。
create or replace function isdigit(text) returns boolean as ' select $1 ~ ''^(-)?[0-9]+$'' as result ' language sql; --test function isdigit( '1')を選択する--return true isdigit( 'A')を選択する - falseを返すfalse
2)
isString関数
– この関数はPostgreSQLにはありません
同様に、これは他のデータベースの組み込み関数であるためです。
これは、文字列allowのみを検証する非常に便利な関数です。しかし、我々は
PostgreSQLでisString関数を独自に作成できます。
関数を作成または置換するisString(text)は、 'select $ 1〜' '^( - )?[a-zA-Z]$' 'as result' language sql; --test function select isString('1') --return false select isString('A') --return true
{空} 3)
isIPAddress関数
– これは他のデータベースの組み込み関数ではないと思います。この機能は、IPアドレスを有効にするために使用されます。
例A
--check ipaddress (0-9)+ \。[0-9]+ \。[0-9]+ $ 'のようにブール値を返します。 '結果として'言語sql; --test function select isIPAddress('202.111.0.1') --return true select isIPAddress('202.ZZZ.0.A') --return false select isIPAddress('202.11199999999.1.100') --return true
例B
create or replace function isIPAddressStrict(text) returns boolean as ' select $1 ~ ''^[0-9]?[0-9]?[0-9]?\.[0-9]?[0-9]?[0-9]?\.[0-9]?[0-9]?[0-9]?\.[0-9]?[0-9]?[0-9]?$'' as result ' language sql; --test function isIPAddressStrict( '202.111.0.1')を選択します。--return true isIPAddressStrict( '202.ZZZ.0.A')を選択します。--return false isIPAddressStrict( '202.11199999999.1.100')--return falseを選択します。
うわー、印象的な権利?実際には正規表現は
単純な関数の上に。それを研究する時間を投資する価値があります。お願いします
あなたがそれについてもっと知りたいなら、ここに行く
http://en.wikipedia.org/wiki/Regular__expression
もしあなたが気にしないなら、あなたの事例を私にも教えてください。ありがとう
postgresql
postgresql
リンク://タグ/正規表現/[正規表現]