NumberRange Class
Definition
- Namespace
- GleamTech.DocumentUltimate
- Assembly
- GleamTech.DocumentUltimate.dll
Represents a range of numbers.
public abstract class NumberRange
- Inheritance
-
NumberRange
- Derived
Remarks
The range is specified as a string in the following forms or combination thereof:
| 5 | single value |
| 1,2,3,4,5 | sequence of values |
| 1-5 | closed range |
| -5 | open range (converted to a sequence from 1 to 5) |
| 1- | open range (converted to a sequence from 1 to final number) |
| all | keyword representing all numbers. |
| odd | keyword representing odd numbers. |
| even | keyword representing even numbers. |
The value delimiter can be either ',' or ';' and the range separator can be either '-' or ':'. Whitespace is permitted at any point in the input.
Any elements of the sequence that contain non-digit, non-whitespace, or non-separator characters or that are empty are ignored.
Constructors
| NumberRange(string) |
Initializes a new instance of the NumberRange class from the specified string. |
Methods
| Add(int) |
Adds a single number to the sequence. |
| Add(int?, int?) |
Adds a range of numbers to the sequence. Reverse ordering is accepted. |
| Add(string) |
Adds a range of numbers to the sequence from a string representation (e.g. 1-5, 8, 11-13). |
| Contains(string) |
Determines whether this instance contains the specified range part (number range or keyword). |
| Enumerate(int) |
Enumerates all the numbers that this range instance describes. The sequence will be distinct and in ascending order. |
| ExpandKeyword(string, int) |
Expands a supported keyword to an enumerable sequence of numbers. It can be overriden in derived classed to support additional keywords. |
| MatchKeyword(string) |
Matches a supported keyword. It can be overriden in derived classed to support additional keywords. |
| ToString() |
Converts this instance to a string containing the range of numbers. |