icu_ext

icu_ext

icu_ext : Access ICU functions

Overview

ID Extension Package Version Category License Language
4240
icu_ext
icu_ext
1.10.0
UTIL
PostgreSQL
C
Attribute Has Binary Has Library Need Load Has DDL Relocatable Trusted
--s-d-r
No
Yes
No
Yes
yes
no
Relationships
See Also
pgpcre
pg_xenophile
unaccent
gzip
bzip
zstd
http
pg_net

Packages

Type Repo Version PG Major Compatibility Package Pattern Dependencies
EXT
MIXED
1.10.0
18
17
16
15
14
icu_ext -
RPM
PIGSTY
1.10.0
18
17
16
15
14
icu_ext_$v -
DEB
PGDG
1.10.0
18
17
16
15
14
postgresql-$v-icu-ext -
Linux / PG PG18 PG17 PG16 PG15 PG14
el8.x86_64
PIGSTY 1.10.0
PIGSTY 1.10.0
PIGSTY 1.10.0
PIGSTY 1.10.0
PIGSTY 1.10.0
el8.aarch64
PIGSTY 1.10.0
PIGSTY 1.10.0
PIGSTY 1.10.0
PIGSTY 1.10.0
PIGSTY 1.10.0
el9.x86_64
PIGSTY 1.10.0
PIGSTY 1.10.0
PIGSTY 1.10.0
PIGSTY 1.10.0
PIGSTY 1.10.0
el9.aarch64
PIGSTY 1.10.0
PIGSTY 1.10.0
PIGSTY 1.10.0
PIGSTY 1.10.0
PIGSTY 1.10.0
el10.x86_64
PIGSTY 1.10.0
PIGSTY 1.10.0
PIGSTY 1.10.0
PIGSTY 1.10.0
PIGSTY 1.10.0
el10.aarch64
PIGSTY 1.10.0
PIGSTY 1.10.0
PIGSTY 1.10.0
PIGSTY 1.10.0
PIGSTY 1.10.0
d12.x86_64
PGDG 1.10.0
PGDG 1.10.0
PGDG 1.10.0
PGDG 1.10.0
PGDG 1.10.0
d12.aarch64
PGDG 1.10.0
PGDG 1.10.0
PGDG 1.10.0
PGDG 1.10.0
PGDG 1.10.0
d13.x86_64
PGDG 1.10.0
PGDG 1.10.0
PGDG 1.10.0
PGDG 1.10.0
PGDG 1.10.0
d13.aarch64
PGDG 1.10.0
PGDG 1.10.0
PGDG 1.10.0
PGDG 1.10.0
PGDG 1.10.0
u22.x86_64
PGDG 1.10.0
PGDG 1.10.0
PGDG 1.10.0
PGDG 1.10.0
PGDG 1.10.0
u22.aarch64
PGDG 1.10.0
PGDG 1.10.0
PGDG 1.10.0
PGDG 1.10.0
PGDG 1.10.0
u24.x86_64
PGDG 1.10.0
PGDG 1.10.0
PGDG 1.10.0
PGDG 1.10.0
PGDG 1.10.0
u24.aarch64
PGDG 1.10.0
PGDG 1.10.0
PGDG 1.10.0
PGDG 1.10.0
PGDG 1.10.0
Package Version OS ORG SIZE File URL
icu_ext_18 1.10.0 el8.x86_64 pigsty 51.0 KiB icu_ext_18-1.10.0-1PIGSTY.el8.x86_64.rpm
icu_ext_18 1.10.0 el8.x86_64 pgdg 47.4 KiB icu_ext_18-1.10.0-1PGDG.rhel8.x86_64.rpm
icu_ext_18 1.10.0 el8.aarch64 pigsty 49.8 KiB icu_ext_18-1.10.0-1PIGSTY.el8.aarch64.rpm
icu_ext_18 1.10.0 el8.aarch64 pgdg 46.1 KiB icu_ext_18-1.10.0-1PGDG.rhel8.aarch64.rpm
icu_ext_18 1.10.0 el9.x86_64 pigsty 49.6 KiB icu_ext_18-1.10.0-1PIGSTY.el9.x86_64.rpm
icu_ext_18 1.10.0 el9.x86_64 pgdg 48.6 KiB icu_ext_18-1.10.0-1PGDG.rhel9.x86_64.rpm
icu_ext_18 1.10.0 el9.aarch64 pigsty 47.9 KiB icu_ext_18-1.10.0-1PIGSTY.el9.aarch64.rpm
icu_ext_18 1.10.0 el9.aarch64 pgdg 46.7 KiB icu_ext_18-1.10.0-1PGDG.rhel9.aarch64.rpm
icu_ext_18 1.10.0 el10.x86_64 pigsty 50.0 KiB icu_ext_18-1.10.0-1PIGSTY.el10.x86_64.rpm
icu_ext_18 1.10.0 el10.x86_64 pgdg 49.2 KiB icu_ext_18-1.10.0-1PGDG.rhel10.x86_64.rpm
icu_ext_18 1.10.0 el10.aarch64 pigsty 48.2 KiB icu_ext_18-1.10.0-1PIGSTY.el10.aarch64.rpm
icu_ext_18 1.10.0 el10.aarch64 pgdg 47.6 KiB icu_ext_18-1.10.0-1PGDG.rhel10.aarch64.rpm
postgresql-18-icu-ext 1.10.0 d12.x86_64 pgdg 94.3 KiB postgresql-18-icu-ext_1.10.0-3.pgdg12+1_amd64.deb
postgresql-18-icu-ext 1.10.0 d12.aarch64 pgdg 92.2 KiB postgresql-18-icu-ext_1.10.0-3.pgdg12+1_arm64.deb
postgresql-18-icu-ext 1.10.0 d13.x86_64 pgdg 94.3 KiB postgresql-18-icu-ext_1.10.0-3.pgdg13+1_amd64.deb
postgresql-18-icu-ext 1.10.0 d13.aarch64 pgdg 92.5 KiB postgresql-18-icu-ext_1.10.0-3.pgdg13+1_arm64.deb
postgresql-18-icu-ext 1.10.0 u22.x86_64 pgdg 95.4 KiB postgresql-18-icu-ext_1.10.0-3.pgdg22.04+1_amd64.deb
postgresql-18-icu-ext 1.10.0 u22.aarch64 pgdg 92.8 KiB postgresql-18-icu-ext_1.10.0-3.pgdg22.04+1_arm64.deb
postgresql-18-icu-ext 1.10.0 u24.x86_64 pgdg 94.6 KiB postgresql-18-icu-ext_1.10.0-3.pgdg24.04+1_amd64.deb
postgresql-18-icu-ext 1.10.0 u24.aarch64 pgdg 92.8 KiB postgresql-18-icu-ext_1.10.0-3.pgdg24.04+1_arm64.deb
Package Version OS ORG SIZE File URL
icu_ext_17 1.10.0 el8.x86_64 pigsty 51.0 KiB icu_ext_17-1.10.0-1PIGSTY.el8.x86_64.rpm
icu_ext_17 1.9.0 el8.x86_64 pgdg 46.4 KiB icu_ext_17-1.9.0-1PGDG.rhel8.x86_64.rpm
icu_ext_17 1.10.0 el8.aarch64 pigsty 49.8 KiB icu_ext_17-1.10.0-1PIGSTY.el8.aarch64.rpm
icu_ext_17 1.9.0 el8.aarch64 pgdg 45.2 KiB icu_ext_17-1.9.0-1PGDG.rhel8.aarch64.rpm
icu_ext_17 1.10.0 el9.x86_64 pigsty 49.6 KiB icu_ext_17-1.10.0-1PIGSTY.el9.x86_64.rpm
icu_ext_17 1.9.0 el9.x86_64 pgdg 47.7 KiB icu_ext_17-1.9.0-1PGDG.rhel9.x86_64.rpm
icu_ext_17 1.10.0 el9.aarch64 pigsty 47.9 KiB icu_ext_17-1.10.0-1PIGSTY.el9.aarch64.rpm
icu_ext_17 1.9.0 el9.aarch64 pgdg 46.0 KiB icu_ext_17-1.9.0-1PGDG.rhel9.aarch64.rpm
icu_ext_17 1.10.0 el10.x86_64 pigsty 50.0 KiB icu_ext_17-1.10.0-1PIGSTY.el10.x86_64.rpm
icu_ext_17 1.9.0 el10.x86_64 pgdg 48.0 KiB icu_ext_17-1.9.0-1PGDG.rhel10.x86_64.rpm
icu_ext_17 1.10.0 el10.aarch64 pigsty 48.2 KiB icu_ext_17-1.10.0-1PIGSTY.el10.aarch64.rpm
icu_ext_17 1.9.0 el10.aarch64 pgdg 46.7 KiB icu_ext_17-1.9.0-1PGDG.rhel10.aarch64.rpm
postgresql-17-icu-ext 1.10.0 d12.x86_64 pgdg 94.2 KiB postgresql-17-icu-ext_1.10.0-3.pgdg12+1_amd64.deb
postgresql-17-icu-ext 1.10.0 d12.aarch64 pgdg 92.3 KiB postgresql-17-icu-ext_1.10.0-3.pgdg12+1_arm64.deb
postgresql-17-icu-ext 1.10.0 d13.x86_64 pgdg 94.5 KiB postgresql-17-icu-ext_1.10.0-3.pgdg13+1_amd64.deb
postgresql-17-icu-ext 1.10.0 d13.aarch64 pgdg 92.5 KiB postgresql-17-icu-ext_1.10.0-3.pgdg13+1_arm64.deb
postgresql-17-icu-ext 1.10.0 u22.x86_64 pgdg 106.2 KiB postgresql-17-icu-ext_1.10.0-3.pgdg22.04+1_amd64.deb
postgresql-17-icu-ext 1.10.0 u22.aarch64 pgdg 103.6 KiB postgresql-17-icu-ext_1.10.0-3.pgdg22.04+1_arm64.deb
postgresql-17-icu-ext 1.10.0 u24.x86_64 pgdg 94.5 KiB postgresql-17-icu-ext_1.10.0-3.pgdg24.04+1_amd64.deb
postgresql-17-icu-ext 1.10.0 u24.aarch64 pgdg 92.5 KiB postgresql-17-icu-ext_1.10.0-3.pgdg24.04+1_arm64.deb
Package Version OS ORG SIZE File URL
icu_ext_16 1.10.0 el8.x86_64 pigsty 50.9 KiB icu_ext_16-1.10.0-1PIGSTY.el8.x86_64.rpm
icu_ext_16 1.9.0 el8.x86_64 pgdg 46.4 KiB icu_ext_16-1.9.0-1PGDG.rhel8.x86_64.rpm
icu_ext_16 1.10.0 el8.aarch64 pigsty 49.8 KiB icu_ext_16-1.10.0-1PIGSTY.el8.aarch64.rpm
icu_ext_16 1.9.0 el8.aarch64 pgdg 45.2 KiB icu_ext_16-1.9.0-1PGDG.rhel8.aarch64.rpm
icu_ext_16 1.10.0 el9.x86_64 pigsty 49.6 KiB icu_ext_16-1.10.0-1PIGSTY.el9.x86_64.rpm
icu_ext_16 1.9.0 el9.x86_64 pgdg 47.7 KiB icu_ext_16-1.9.0-1PGDG.rhel9.x86_64.rpm
icu_ext_16 1.10.0 el9.aarch64 pigsty 47.9 KiB icu_ext_16-1.10.0-1PIGSTY.el9.aarch64.rpm
icu_ext_16 1.9.0 el9.aarch64 pgdg 45.9 KiB icu_ext_16-1.9.0-1PGDG.rhel9.aarch64.rpm
icu_ext_16 1.10.0 el10.x86_64 pigsty 50.0 KiB icu_ext_16-1.10.0-1PIGSTY.el10.x86_64.rpm
icu_ext_16 1.9.0 el10.x86_64 pgdg 48.0 KiB icu_ext_16-1.9.0-1PGDG.rhel10.x86_64.rpm
icu_ext_16 1.10.0 el10.aarch64 pigsty 48.3 KiB icu_ext_16-1.10.0-1PIGSTY.el10.aarch64.rpm
icu_ext_16 1.9.0 el10.aarch64 pgdg 46.7 KiB icu_ext_16-1.9.0-1PGDG.rhel10.aarch64.rpm
postgresql-16-icu-ext 1.10.0 d12.x86_64 pgdg 94.5 KiB postgresql-16-icu-ext_1.10.0-3.pgdg12+1_amd64.deb
postgresql-16-icu-ext 1.10.0 d12.aarch64 pgdg 92.3 KiB postgresql-16-icu-ext_1.10.0-3.pgdg12+1_arm64.deb
postgresql-16-icu-ext 1.10.0 d13.x86_64 pgdg 94.5 KiB postgresql-16-icu-ext_1.10.0-3.pgdg13+1_amd64.deb
postgresql-16-icu-ext 1.10.0 d13.aarch64 pgdg 92.4 KiB postgresql-16-icu-ext_1.10.0-3.pgdg13+1_arm64.deb
postgresql-16-icu-ext 1.10.0 u22.x86_64 pgdg 106.6 KiB postgresql-16-icu-ext_1.10.0-3.pgdg22.04+1_amd64.deb
postgresql-16-icu-ext 1.10.0 u22.aarch64 pgdg 103.9 KiB postgresql-16-icu-ext_1.10.0-3.pgdg22.04+1_arm64.deb
postgresql-16-icu-ext 1.10.0 u24.x86_64 pgdg 94.5 KiB postgresql-16-icu-ext_1.10.0-3.pgdg24.04+1_amd64.deb
postgresql-16-icu-ext 1.10.0 u24.aarch64 pgdg 92.7 KiB postgresql-16-icu-ext_1.10.0-3.pgdg24.04+1_arm64.deb
Package Version OS ORG SIZE File URL
icu_ext_15 1.10.0 el8.x86_64 pigsty 51.0 KiB icu_ext_15-1.10.0-1PIGSTY.el8.x86_64.rpm
icu_ext_15 1.9.0 el8.x86_64 pgdg 46.5 KiB icu_ext_15-1.9.0-1PGDG.rhel8.x86_64.rpm
icu_ext_15 1.10.0 el8.aarch64 pigsty 49.7 KiB icu_ext_15-1.10.0-1PIGSTY.el8.aarch64.rpm
icu_ext_15 1.9.0 el8.aarch64 pgdg 45.2 KiB icu_ext_15-1.9.0-1PGDG.rhel8.aarch64.rpm
icu_ext_15 1.10.0 el9.x86_64 pigsty 50.0 KiB icu_ext_15-1.10.0-1PIGSTY.el9.x86_64.rpm
icu_ext_15 1.9.0 el9.x86_64 pgdg 47.8 KiB icu_ext_15-1.9.0-1PGDG.rhel9.x86_64.rpm
icu_ext_15 1.10.0 el9.aarch64 pigsty 48.0 KiB icu_ext_15-1.10.0-1PIGSTY.el9.aarch64.rpm
icu_ext_15 1.9.0 el9.aarch64 pgdg 46.2 KiB icu_ext_15-1.9.0-1PGDG.rhel9.aarch64.rpm
icu_ext_15 1.10.0 el10.x86_64 pigsty 49.9 KiB icu_ext_15-1.10.0-1PIGSTY.el10.x86_64.rpm
icu_ext_15 1.9.0 el10.x86_64 pgdg 48.1 KiB icu_ext_15-1.9.0-1PGDG.rhel10.x86_64.rpm
icu_ext_15 1.10.0 el10.aarch64 pigsty 48.3 KiB icu_ext_15-1.10.0-1PIGSTY.el10.aarch64.rpm
icu_ext_15 1.9.0 el10.aarch64 pgdg 46.7 KiB icu_ext_15-1.9.0-1PGDG.rhel10.aarch64.rpm
postgresql-15-icu-ext 1.10.0 d12.x86_64 pgdg 94.3 KiB postgresql-15-icu-ext_1.10.0-3.pgdg12+1_amd64.deb
postgresql-15-icu-ext 1.10.0 d12.aarch64 pgdg 92.3 KiB postgresql-15-icu-ext_1.10.0-3.pgdg12+1_arm64.deb
postgresql-15-icu-ext 1.10.0 d13.x86_64 pgdg 94.4 KiB postgresql-15-icu-ext_1.10.0-3.pgdg13+1_amd64.deb
postgresql-15-icu-ext 1.10.0 d13.aarch64 pgdg 92.0 KiB postgresql-15-icu-ext_1.10.0-3.pgdg13+1_arm64.deb
postgresql-15-icu-ext 1.10.0 u22.x86_64 pgdg 106.3 KiB postgresql-15-icu-ext_1.10.0-3.pgdg22.04+1_amd64.deb
postgresql-15-icu-ext 1.10.0 u22.aarch64 pgdg 103.5 KiB postgresql-15-icu-ext_1.10.0-3.pgdg22.04+1_arm64.deb
postgresql-15-icu-ext 1.10.0 u24.x86_64 pgdg 94.4 KiB postgresql-15-icu-ext_1.10.0-3.pgdg24.04+1_amd64.deb
postgresql-15-icu-ext 1.10.0 u24.aarch64 pgdg 92.5 KiB postgresql-15-icu-ext_1.10.0-3.pgdg24.04+1_arm64.deb
Package Version OS ORG SIZE File URL
icu_ext_14 1.10.0 el8.x86_64 pigsty 51.2 KiB icu_ext_14-1.10.0-1PIGSTY.el8.x86_64.rpm
icu_ext_14 1.9.0 el8.x86_64 pgdg 46.6 KiB icu_ext_14-1.9.0-1PGDG.rhel8.x86_64.rpm
icu_ext_14 1.10.0 el8.aarch64 pigsty 49.9 KiB icu_ext_14-1.10.0-1PIGSTY.el8.aarch64.rpm
icu_ext_14 1.9.0 el8.aarch64 pgdg 45.3 KiB icu_ext_14-1.9.0-1PGDG.rhel8.aarch64.rpm
icu_ext_14 1.10.0 el9.x86_64 pigsty 50.0 KiB icu_ext_14-1.10.0-1PIGSTY.el9.x86_64.rpm
icu_ext_14 1.9.0 el9.x86_64 pgdg 48.0 KiB icu_ext_14-1.9.0-1PGDG.rhel9.x86_64.rpm
icu_ext_14 1.10.0 el9.aarch64 pigsty 48.2 KiB icu_ext_14-1.10.0-1PIGSTY.el9.aarch64.rpm
icu_ext_14 1.9.0 el9.aarch64 pgdg 46.3 KiB icu_ext_14-1.9.0-1PGDG.rhel9.aarch64.rpm
icu_ext_14 1.10.0 el10.x86_64 pigsty 49.9 KiB icu_ext_14-1.10.0-1PIGSTY.el10.x86_64.rpm
icu_ext_14 1.9.0 el10.x86_64 pgdg 48.2 KiB icu_ext_14-1.9.0-1PGDG.rhel10.x86_64.rpm
icu_ext_14 1.10.0 el10.aarch64 pigsty 48.4 KiB icu_ext_14-1.10.0-1PIGSTY.el10.aarch64.rpm
icu_ext_14 1.9.0 el10.aarch64 pgdg 46.8 KiB icu_ext_14-1.9.0-1PGDG.rhel10.aarch64.rpm
postgresql-14-icu-ext 1.10.0 d12.x86_64 pgdg 94.7 KiB postgresql-14-icu-ext_1.10.0-3.pgdg12+1_amd64.deb
postgresql-14-icu-ext 1.10.0 d12.aarch64 pgdg 92.5 KiB postgresql-14-icu-ext_1.10.0-3.pgdg12+1_arm64.deb
postgresql-14-icu-ext 1.10.0 d13.x86_64 pgdg 94.9 KiB postgresql-14-icu-ext_1.10.0-3.pgdg13+1_amd64.deb
postgresql-14-icu-ext 1.10.0 d13.aarch64 pgdg 92.6 KiB postgresql-14-icu-ext_1.10.0-3.pgdg13+1_arm64.deb
postgresql-14-icu-ext 1.10.0 u22.x86_64 pgdg 107.0 KiB postgresql-14-icu-ext_1.10.0-3.pgdg22.04+1_amd64.deb
postgresql-14-icu-ext 1.10.0 u22.aarch64 pgdg 104.2 KiB postgresql-14-icu-ext_1.10.0-3.pgdg22.04+1_arm64.deb
postgresql-14-icu-ext 1.10.0 u24.x86_64 pgdg 95.0 KiB postgresql-14-icu-ext_1.10.0-3.pgdg24.04+1_amd64.deb
postgresql-14-icu-ext 1.10.0 u24.aarch64 pgdg 92.6 KiB postgresql-14-icu-ext_1.10.0-3.pgdg24.04+1_arm64.deb

Source

pig build pkg icu_ext;# build rpm

Install

Make sure PGDG and PIGSTY repo available:

pig repo add pgsql -u # add both repo and update cache

Install this extension with pig:

pig install icu_ext;# install via package name, for the active PG version  pig install icu_ext -v 18; # install for PG 18 pig install icu_ext -v 17; # install for PG 17 pig install icu_ext -v 16; # install for PG 16 pig install icu_ext -v 15; # install for PG 15 pig install icu_ext -v 14; # install for PG 14

Create this extension with:

CREATE EXTENSION icu_ext;

Usage

icu_ext: ICU extension functions for PostgreSQL

Exposes ICU functionality to PostgreSQL. Requires PostgreSQL 11+ configured with ICU (--with-icu).

Version Info

SELECT icu_version(); -- ICU library version SELECT icu_unicode_version(); -- Unicode standard version

Locale Functions

SELECT * FROM icu_locales_list() WHERE name LIKE 'es%' LIMIT 5; SELECT icu_default_locale(); SELECT icu_set_default_locale('en');

Collation Attributes

SELECT * FROM icu_collation_attributes('fr-u-ks-level2-kn');

String Comparison

-- Case-sensitive, accent-insensitive comparison: SELECT icu_compare('abce', 'abce', 'en-u-ks-level1-kc-true'); -- 0 SELECT icu_compare('Abce', 'abce', 'en-u-ks-level1-kc-true'); -- 1

Sort Keys (for unique indexes)

CREATE UNIQUE INDEX idx ON my_table((icu_sort_key(name, 'fr-u-ks-level1')));

Text Boundary Analysis

SELECT * FROM icu_character_boundaries('Hello', 'en'); SELECT * FROM icu_word_boundaries('I like books', 'en'); SELECT * FROM icu_sentence_boundaries('Mr. Smith went home. He was tired.', 'en'); SELECT * FROM icu_line_boundaries('Long text here', 'en');

Unicode Normalization and Transformation

SELECT icu_normalize('text', 'NFC'); SELECT icu_is_normalized('text', 'NFC'); SELECT icu_transform('Hello', 'Latin-Cyrillic'); SELECT * FROM icu_transforms_list();

Number Spellout

SELECT icu_number_spellout(42, 'en'); -- 'forty-two' SELECT icu_number_spellout(42, 'fr'); -- 'quarante-deux'

Spoof and Confusable Detection

SELECT icu_spoof_check('paypal'); SELECT icu_confusable_strings_check('google', 'gооgle');

Character Info

SELECT icu_char_name('A'); SELECT icu_char_type('A');
Last updated on