SPLASH is a c++ class library that implements many of the Perl constructs and data types, including extensive regex regular expression pattern matching. For those not familiar with Perl, it is an excellent scripting language by Larry Wall and is available for most platforms. This Class library provides List, String, Regular Expression, and text manipulation handling capabilities based on those provided in Perl
Text processing often involves matching text against a pattern. Although Java s character and assorted string classes offerlow- levelpattern- matching support, that support commonly leads to complex code. To help you write simplerpattern- matching code, Java provides regular expressions. After introducing you to terminology and thejava.util. regex package, Jeff Friesen explores many regular expression constructs supported by that package s Pattern class. Then he examines Pattern s methods and the additionaljava.util. regex classes. In conclusion, he presents a practical application of regular expressions.
UC Library Extensions
UnderC comes with a pocket implementation of the standard C++ libraries, which is a reasonably faithful subset. This documentation describes those UnderC functions and classes which are not part of the C++ standard.
UC Library
Builtin functions:
Most of these are standard C functions, but there are a few unique to the UnderC system which give you runtime access to the compiler. You may evaluate expressions, execute commands, compile code, etc.
* Expands the text in expr using the UnderC preprocessor, putting the result
into buff.
void uc_macro_subst(const char* expr, char* buff, int buffsize)
* Executes a UC #-command, like #l or #help.
uc_cmd() expects the name of the command, _without_ the hash,
e.g. uc_cmd("l fred.cpp") or uc_cmd("help").
void uc_cmd(const char* cmd)
* Evaluates any C++ expression or statement will return non-zero if
unsuccessful.
Full support for extended regular expressions (those with intersection and complement); Support for some kinds of cycles in grammar; DFA-based operation; Unicode support; C++ only, requires a modern compiler; Lexical analyzers can be configured to get symbols from any input class (built-in support for std::istream, std::wistream and FILE *); Designed to work with Whale, but can work standalone or interface to other parsers.