Profile Query Language (PQL) は、文字列とのやり取りが簡単になる関数を提供します。 その他の PQL 関数について詳しくは、 Profile Query Language 概要.
like
関数は、文字列が指定のパターンと一致するかどうかを判定するために使用されます。
形式
{STRING_1} like {STRING_2}
引数 | 説明 |
---|---|
{STRING_1} |
チェックの実行対象となる文字列です。 |
{STRING_2} |
最初の文字列列と照合される式です。式の作成に使用できる特殊文字として、% と _ の 2 つがサポートされています。
|
例
次の PQL クエリでは、「es」というパターンを含むすべての市区町村を取得します。
city like "%es%"
startsWith
関数は、文字列が指定の部分文字列で始まるかどうかを判定するために使用されます。
形式
{STRING_1}.startsWith({STRING_2}, {BOOLEAN})
引数 | 説明 |
---|---|
{STRING_1} |
チェックの実行対象となる文字列です。 |
{STRING_2} |
最初の文字列内で検索する文字列です。 |
{BOOLEAN} |
チェックで大文字と小文字が区別されるかどうかを指定するオプションのパラメーターです。デフォルトでは true に設定されています。 |
例
次の PQL クエリでは、大文字と小文字を区別したうえで、人の名前が「Joe」で始まるかどうかを判定します。
person.name.startsWith("Joe")
doesNotStartWith
関数は、文字列が指定の部分文字列で始まらないかどうかを判定するために使用されます。
形式
{STRING_1}.doesNotStartWith({STRING_2}, {BOOLEAN})
引数 | 説明 |
---|---|
{STRING_1} |
チェックの実行対象となる文字列です。 |
{STRING_2} |
最初の文字列内で検索する文字列です。 |
{BOOLEAN} |
チェックで大文字と小文字が区別されるかどうかを指定するオプションのパラメーターです。デフォルトでは true に設定されています。 |
例
次の PQL クエリでは、大文字と小文字を区別したうえで、人の名前が「Joe」で始まらないかどうかを判断します。
person.name.doesNotStartWith("Joe")
endsWith
関数は、文字列が指定の部分文字列で終わるかどうかを判定するために使用されます。
形式
{STRING_1}.endsWith({STRING_2}, {BOOLEAN})
引数 | 説明 |
---|---|
{STRING_1} |
チェックの実行対象となる文字列です。 |
{STRING_2} |
最初の文字列内で検索する文字列です。 |
{BOOLEAN} |
チェックで大文字と小文字が区別されるかどうかを指定するオプションのパラメーターです。デフォルトでは true に設定されています。 |
例
次の PQL クエリでは、大文字と小文字を区別したうえで、人のメールアドレスが「.com」で終わるかどうかを判定します。
person.emailAddress.endsWith(".com")
doesNotEndWith
関数は、文字列が指定の部分文字列で終わらないかどうかを判定するために使用されます。
形式
{STRING_1}.doesNotEndWith({STRING_2}, {BOOLEAN})
引数 | 説明 |
---|---|
{STRING_1} |
チェックの実行対象となる文字列です。 |
{STRING_2} |
最初の文字列内で検索する文字列です。 |
{BOOLEAN} |
チェックで大文字と小文字が区別されるかどうかを指定するオプションのパラメーターです。デフォルトでは true に設定されています。 |
例
次の PQL クエリでは、大文字と小文字を区別したうえで、人のメールアドレスが「.com」で終わらないかどうかを判定します。
person.emailAddress.doesNotEndWith(".com")
contains
関数は、文字列が指定の部分文字列を含んでいるかどうかを判定するために使用されます。
形式
{STRING_1}.contains({STRING_2}, {BOOLEAN})
引数 | 説明 |
---|---|
{STRING_1} |
チェックの実行対象となる文字列です。 |
{STRING_2} |
最初の文字列内で検索する文字列です。 |
{BOOLEAN} |
チェックで大文字と小文字が区別されるかどうかを指定するオプションのパラメーターです。デフォルトでは true に設定されています。 |
例
次の PQL クエリでは、大文字と小文字を区別したうえで、人のメールアドレスが「2010@gm」という文字列を含んでいるかどうかを判定します。
person.emailAddress.contains("2010@gm")
doesNotContain
関数は、文字列が指定の部分文字列を含んでいないかどうかを判定するために使用されます。
形式
{STRING_1}.doesNotContain({STRING_2}, {BOOLEAN})
引数 | 説明 |
---|---|
{STRING_1} |
チェックの実行対象となる文字列です。 |
{STRING_2} |
最初の文字列内で検索する文字列です。 |
{BOOLEAN} |
チェックで大文字と小文字が区別されるかどうかを指定するオプションのパラメーターです。デフォルトでは true に設定されています。 |
例
次の PQL クエリでは、大文字と小文字を区別したうえで、人のメールアドレスが「2010@gm」という文字列を含んでいないかどうかを判定します。
person.emailAddress.doesNotContain("2010@gm")
equals
関数は、文字列が指定の文字列に等しいかどうかを判定するために使用されます。
形式
{STRING_1}.equals({STRING_2})
引数 | 説明 |
---|---|
{STRING_1} |
チェックの実行対象となる文字列です。 |
{STRING_2} |
最初の文字列と比較する文字列です。 |
例
次の PQL クエリでは、大文字と小文字を区別したうえで、人の名前が「John」かどうかを判定します。
person.name.equals("John")
notEqualTo
関数は、文字列が指定の文字列に等しくないかどうかを判定するために使用されます。
形式
{STRING_1}.notEqualTo({STRING_2})
引数 | 説明 |
---|---|
{STRING_1} |
チェックの実行対象となる文字列です。 |
{STRING_2} |
最初の文字列と比較する文字列です。 |
例
次の PQL クエリでは、大文字と小文字を区別したうえで、人の名前が「John」でないかどうかを判定します。
person.name.notEqualTo("John")
matches
関数は、文字列が特定の正規表現と一致するかどうかを判定するために使用されます。正規表現でのパターンマッチングについて詳しくは、こちらのドキュメントを参照してください。
形式
{STRING_1}.matches(STRING_2})
例
次の PQL クエリでは、大文字と小文字を区別せずに、人の名前が「John」で始まるかどうかを判定します。
person.name.matches("(?i)^John")
次のような正規表現関数を使用する場合: \w
、 必須 バックスラッシュ文字をエスケープします。 だから、ただ書く代わりに \w
の場合は、余分なバックスラッシュを含め、 \\w
.
regexGroup
関数は、指定された正規表現に基づいて特定の情報を抽出するために使用されます。
形式
{STRING}.regexGroup({EXPRESSION})
例
次の PQL クエリは、メールアドレスからドメイン名を抽出するために使用します。
emailAddress.regexGroup("@(\\w+)", 1)
次のような正規表現関数を使用する場合: \w
、 必須 バックスラッシュ文字をエスケープします。 だから、ただ書く代わりに \w
の場合は、余分なバックスラッシュを含め、 \\w
.
ここで学習した文字列関数は、PQL クエリ内で使用できます。その他の PQL 関数について詳しくは、プロファイルクエリ言語の概要を参照してください。