Unicode library

This package contains a Unicode support library along with some additional files to use WideStrings/Unicode strings in your application.

Following are the core features:

  • More than 100 low level and intermediate level functions for:
    • null terminated strings: StrLenW, StrECopyW, StrLICompW etc.
    • WideStrings: WideStringOfChar, WideTitleCase etc.
    • Unicode character test routines: UnicodeIsAlpha, UnicodeIsOpenPunctuation, UnicodeIsRTL etc.
    • conversion: WideStringToUTF8 and vice versa
    • KeyUnicode: conversion of a given ANSI character to Unicode based on the currently active keyboard layout
    • and many more...
  • TWideStrings and TWideStringList classes, which work like their ANSI counterparts, but with Unicode.
  • A Unicode Tuned Boyer-Moore search engine (UTBM), for fast linear text searches taking surrogates into account. Special options: case sensitivity, ignore non-spacing, space compression, whole words only.
  • A comfortable Unicode Regular Expression search engine (URE), implementing most of the Perl 8 RE implementation. This includes:
    • base operators like: . + * ? () {m, n} (unlimited nesting of subexpressions)
    • literals and constants: c, \x..., \U....
    • character classes: [...], [^...], \pN1, N2, ...Nn, \PN1, PN2, ...PNn (examples for these classes are: combining, non-spacing, numdigit, separator, currency symbol). They can be combined with literals and constants like:
      [abc\U10A\p1,3,4]
    • POSIX classes: :alnum:, :digit:, :upper: etc.
    • the same special options apply here as to the UTBM search engine
  • Both search engines are based on the same core class to allow for variable search actions.

License:

The Soft Gems Uniocde library is released under the MIT license. This license is very generous and allows use of the code in any application including commercial software.

Download:

Unicode Library
Download link: Unicode Library
Description: Delphi Gems Unicode library
Version: 2.0
Last change: 03. Feb 2007
Download count: 40958
Package size: 66 KB
Author: Mike Lischke (www.soft-gems.net)
Platform: Delphi 4 - 5, BCB 4 - 5
Type of download: Delphi component

Collaboration

If you want to know more about me see my LinkedIn and Google profiles.

Source Code for older projects is available from my site only (except for GraphicEx). All newer development can be found on Github.