StringTools - Maple Help
For the best experience, we recommend viewing online help using Google Chrome or Microsoft Edge.

Online Help

All Products    Maple    MapleSim


Overview of the StringTools Package

 

Calling Sequence

Description

List of StringTools Package Commands

List of StringTools Subpackages

Alphabetical List of All StringTools Commands

Calling Sequence

StringTools:-command(arguments)

command(arguments)

Description

• 

The StringTools package is a collection of optimized string manipulation utilities.

• 

Each command in the StringTools package can be accessed by using either the long form or the short form of the command name in the command calling sequence.

  

The long form, StringTools:-command, is always available.  The short form can be used after loading the package.

List of StringTools Package Commands

  

The following is a list of available commands.

  

Case Conversions

CamelCase

Capitalize

LowerCase

OtherCase

UpperCase

 

 

 

  

 

  

Character Class Tests

Has

HasAlpha

HasAlphaNumeric

HasASCII

HasBinaryDigit

HasControlCharacter

HasDigit

HasGraphic

HasHexDigit

HasIdentifier

HasIdentifier1

HasLower

HasOctalDigit

HasPrintable

HasPunctuation

HasSpace

HasUpper

HasVowel

IsAlpha

IsAlphaNumeric

IsASCII

IsBinaryDigit

IsControlCharacter

IsDigit

IsGraphic

IsHexDigit

IsIdentifier

IsIdentifier1

IsLower

IsOctalDigit

IsPrintable

IsPunctuation

IsSpace

IsUpper

IsVowel

 

  

 

  

Combinatorics on Words

Border

BorderArray

BorderLength

Fibonacci

IsConjugate

IsDerangement

IsEodermdrome

IsPalindrome

IsPeriod

IsPermutation

IsPrimitive

LyndonFactors

MaximalPalindromicSubstring

MinimumConjugate

MonotonicFactors

Overlap

PatternCanonicalForm

PatternEquivalent

Period

PrimitiveRoot

ThueMorse

 

 

 

  

 

  

Comparisons

Compare

CompareCI

IsPrefix

IsSuffix

LeftRecursivePathOrder

LexOrder

RevLexOrder

RightRecursivePathOrder

ShortLexOrder

ShortRevLexOrder

 

 

  

 

  

Constructors

Fill

Generate

Iota

Random

Repeat

Tabulate

 

 

  

 

  

Date and Time Procedures

FormatTime

ParseTime

 

 

  

 

  

Encodings

Decode

DecodeEntities

Encode

EncodeEntities

Escape

Visible

 

 

  

 

  

Metrics and Distances

EditDistance

HammingDistance

Levenshtein

PrefixDistance

SuffixDistance

 

 

 

  

 

  

Routines for Manipulating English Text

Anagrams

CamelCase

IsAnagram

IsBalanced

Readability

Sentences

Stem

SyllableLength

WordContaining

WordCount

WordEnd

Words

WordStart

WrapText

 

 

  

 

  

Filter Operations

AndMap

CharacterMap

Drop

Map

OrMap

Remove

Select

SelectRemove

Snarf

Take

 

 

  

 

  

Iterators

LeftFold

RightFold

 

 

  

 

  

List Conversions

CaseJoin

CaseSplit

Explode

Implode

Join

LengthSplit

Split

StringSplit

  

 

  

Pattern Matching and Text Searching

ApproximateSearch

ApproximateSearchAll

FirstFromLeft

FirstFromRight

HammingSearch

HammingSearchAll

PatternDictionary

PatternDictionary[Create]

PatternDictionary[Factors]

PatternDictionary[Get]

PatternDictionary[Search]

PatternDictionary[Size]

RegMatch

RegSplit

RegSub

RegSubs

Search

SearchAll

Subs

Substitute

SubstituteAll

WildcardMatch

 

 

  

 

  

Random Strings

Random

Randomize

 

 

  

 

  

String Sorting

IsSorted

Sort

Unique

 

  

 

  

String Homology

CommonPrefix

CommonSuffix

IsSubSequence

Levenshtein

LongestCommonSubSequence

LongestCommonSubString

Metaphone

SimilarityCoefficient

Soundex

 

 

 

  

 

  

Statistics

ArithmeticMean

Entropy

IndexOfCoincidence

Kasiski

MaxChar

MinChar

Repeats

 

  

 

  

Transformations

Exchange

GenerateIdentifier

Permute

Reverse

Rotate

Shift

SortPermutation

 

  

 

  

Whitespace Handling Procedures

Center

Chomp

Chop

DeleteSpace

ExpandTabs

Fence

Indent

MatchFence

PadLeft

PadRight

Squeeze

Trim

TrimLeft

TrimRight

 

 

  

 

  

Miscellaneous Routines

Char

CharacterFrequencies

Compress

CountCharacterOccurrences

Delete

DifferencePositions

ExpandCharacterClass

FormatMessage

FromByteArray

Group

Hash

Insert

Length

NGrams

NthWord

Ord

StringBuffer

SubString

Support

ToByteArray

Uncompress

 

 

 

• 

The commands in the StringTools package accept symbols in place of strings, whenever possible. However, values returned by commands in the StringTools package are always of type string (rather than symbol), even when the input is a symbol. (Some StringTools procedures return other kinds of values, such as numerics, or other data structures like lists, however.)

• 

Note that, for portability, all collation and character class tests and conversions are performed in the C (POSIX) locale. For definitions of the various character classes recognized by the package, see the corresponding character class test help page (for example, StringTools[IsLower]).

• 

To display the help page for a particular StringTools commands, see Getting Help with a Command in a Package.

• 

All of the StringTools package commands treat strings as (null-terminated) sequences of 8-bit (ASCII) characters.  Thus, there is no support for multibyte character encodings, such as unicode encodings.

List of StringTools Subpackages

• 

The PatternDictionary subpackage provides facilities for managing this list of patterns.

Alphabetical List of All StringTools Commands

Anagrams

AndMap

ApproximateSearch

ApproximateSearchAll

ArithmeticMean

Border

BorderArray

BorderLength

CamelCase

Capitalize

CaseJoin

CaseSplit

Center

Char

CharacterFrequencies

CharacterMap

Chomp

Chop

CommonPrefix

CommonSuffix

Compare

CompareCI

Compress

CountCharacterOccurrences

Decode

DecodeEntities

Delete

DeleteSpace

DifferencePositions

Drop

EditDistance

Encode

EncodeEntities

Entropy

Escape

Exchange

ExpandCharacterClass

ExpandTabs

Explode

Fence

Fibonacci

Fill

FirstFromLeft

FirstFromRight

FormatMessage

FormatTime

FromByteArray

Generate

GenerateIdentifier

Group

HammingDistance

HammingSearch

HammingSearchAll

Has

HasAlpha

HasAlphaNumeric

HasASCII

HasBinaryDigit

HasControlCharacter

HasDigit

HasGraphic

Hash

HasHexDigit

HasIdentifier

HasIdentifier1

HasLower

HasOctalDigit

HasPrintable

HasPunctuation

HasSpace

HasUpper

HasVowel

Implode

Indent

IndexOfCoincidence

Insert

Iota

IsAlpha

IsAlphaNumeric

IsAnagram

IsASCII

IsBalanced

IsBinaryDigit

IsConjugate

IsControlCharacter

IsDerangement

IsDigit

IsEodermdrome

IsGraphic

IsHexDigit

IsIdentifier

IsIdentifier1

IsLower

IsMonotonic

IsOctalDigit

IsPalindrome

IsPeriod

IsPermutation

IsPrefix

IsPrimitive

IsPrintable

IsPunctuation

IsSorted

IsSpace

IsSubSequence

IsSuffix

IsUpper

IsVowel

Join

Kasiski

LeftFold

LeftRecursivePathOrder

Length

LengthSplit

Levenshtein

LexOrder

LongestCommonSubSequence

LongestCommonSubString

LowerCase

LyndonFactors

Map

MatchFence

MaxChar

MaximalPalindromicSubstring

Metaphone

MinChar

MinimumConjugate

MonotonicFactors

NGrams

NthWord

Ord

OrMap

OtherCase

Overlap

PadLeft

PadRight

ParseTime

PatternCanonicalForm

PatternEquivalent

Period

Permute

PrefixDistance

PrimitiveRoot

Random

Randomize

Readability

RegMatch

RegSplit

RegSub

RegSubs

Remove

Repeat

Repeats

Reverse

RevLexOrder

RightFold

RightRecursivePathOrder

Rotate

Search

SearchAll

Select

SelectRemove

Sentences

Shift

ShortLexOrder

ShortRevLexOrder

SimilarityCoefficient

Snarf

Sort

SortPermutation

Soundex

Split

Squeeze

Stem

StringBuffer

StringSplit

Subs

Substitute

SubstituteAll

SubString

SuffixDistance

Support

SyllableLength

Tabulate

Take

ThueMorse

ToByteArray

Trim

TrimLeft

TrimRight

Uncompress

Unique

UpperCase

Visible

WildcardMatch

WordContaining

WordCount

WordEnd

Words

WordStart

WrapText

 

 

 

See Also

help

list

module

numerics

string

symbol

UsingPackages

with