Synesis Software STLSoft - ... Robust, Lightweight, Cross-platform, Template Software ...

Pattern Control Flags
[shwild API]


Detailed Description

These flags control the pattern matching behaviour:.

1. Escape character. This is to recognise \ as an escape character, escaping any following character.

This is on by default, but may be suppressed by SHWILD_F_SUPPRESS_BACKSLASH_ESCAPE.

2. Range support. This recognises [] as delimiting a range of possible characters that may sustitute for a single character.

This is on by default, but may be suppressed by SHWILD_F_SUPPRESS_RANGE_SUPPORT.

3. Range continuum support. This recognises a continuum of characters or numbers, e.g. [3-5m-q] === [345mnopq]

This is on by default, but may be suppressed by SHWILD_F_SUPPRESS_RANGE_CONTINUUM_SUPPORT.


Defines

#define SHWILD_F_SUPPRESS_RANGE_SUPPORT   (0x0001)
#define SHWILD_F_SUPPRESS_BACKSLASH_ESCAPE   (0x0002)
#define SHWILD_F_SUPPRESS_RANGE_CONTINUUM_SUPPORT   (0x0004)
#define SHWILD_F_SUPPRESS_RANGE_CONTINUUM_HIGHLOW_SUPPORT   (0x0008)
#define SHWILD_F_SUPPRESS_RANGE_CONTINUUM_CROSSCASE_SUPPORT   (0x0010)
#define SHWILD_F_SUPPRESS_RANGE_LITERAL_WILDCARD_SUPPORT   (0x0020)
#define SHWILD_F_SUPPRESS_RANGE_LEADTRAIL_LITERAL_HYPHEN_SUPPORT   (0x0040)
#define SHWILD_F_SUPPRESS_RANGE_NOT_SUPPORT   (0x0400)
#define SHWILD_F_IGNORE_CASE   (0x0200)


Define Documentation

#define SHWILD_F_IGNORE_CASE   (0x0200)

Comparison is case-insensitive.

#define SHWILD_F_SUPPRESS_BACKSLASH_ESCAPE   (0x0002)

Suppresses the use of backslash interpretation as escape. \ is treated as a literal character.

#define SHWILD_F_SUPPRESS_RANGE_CONTINUUM_CROSSCASE_SUPPORT   (0x0010)

Suppresses the recognition of cross-case range continuums, i.e. [h-J] === [hijHIJ].

#define SHWILD_F_SUPPRESS_RANGE_CONTINUUM_HIGHLOW_SUPPORT   (0x0008)

Suppresses the recognition of reverse range continuums, i.e. [9-0], [M-D].

#define SHWILD_F_SUPPRESS_RANGE_CONTINUUM_SUPPORT   (0x0004)

Suppresses the recognition of range continuums, i.e. [0-9].

#define SHWILD_F_SUPPRESS_RANGE_LEADTRAIL_LITERAL_HYPHEN_SUPPORT   (0x0040)

Suppresses the recognition of leading/trailing hyphens as literal inside range.

#define SHWILD_F_SUPPRESS_RANGE_LITERAL_WILDCARD_SUPPORT   (0x0020)

Suppresses the recognition of ? and * as literal inside range.

#define SHWILD_F_SUPPRESS_RANGE_NOT_SUPPORT   (0x0400)

Suppresses the use of a leading ^ to mean not any of the following, i.e. [^0-9] means do not match a digit.

#define SHWILD_F_SUPPRESS_RANGE_SUPPORT   (0x0001)

Suppresses the recognition of ranges. [ and ] are treated as literal characters (and need no escaping).


b64 Library documentation © Synesis Software Pty Ltd, 2004-2012