NAME

Table::BoxFormat::Unicode::CharClasses - character classes to work with db SELECT result formats

SYNOPSIS

use Table::BoxFormat::Unicode::CharClasses ':all';

$horizontal_dashes_plus_crosses_or_whitespace = 
        qr{ ^              
             [ \p{IsHor} \s ] +             
            $  }x;               

$cross_character = 
         qr{ 
              \p{IsCross}               
                 {1,1}   # just one 
            }xms;

$column_separator = 
      qr{
         \s+         # require leading whitespace
         \p{IsDelim}
             {1,1}   # just one
         \s+         # require trailing whitespace
     }xms;

DESCRIPTION

Table::BoxFormat::Unicode::CharClasses, contains a number of pre-defined character classes to assist in writing regular expressions to match elements of typical database SELECT result formats (see: Table::BoxFormat).

EXPORT

None by default, ':all' for all.

regexp properties

Definitons of some custom regexp character properties that might be useful for projects such as Table::BoxFormat, that work with the tabular text formats used by database monitors to display select results.

IsHor

Matches characters found in a "horizontal rule" row.

IsCross

Matches the "cross" characters used at line intersections.

IsDelim

Matches the delimeter/separator characters used on column boundaries.

NOTES

about characters used in the above classes

unicode characters

the unicode psql format uses these three characters:

uniprops U+2502 U+2502 ‹│› \N{BOX DRAWINGS LIGHT VERTICAL} \pS \p{So} All Any Assigned InBoxDrawing Box_Drawing Common Zyyy So S Gr_Base Grapheme_Base Graph GrBase Other_Symbol Pat_Syn Pattern_Syntax PatSyn Print Symbol Unicode X_POSIX_Graph X_POSIX_Print

uniprops U+2500 U+2500 ‹─› \N{BOX DRAWINGS LIGHT HORIZONTAL} \pS \p{So} All Any Assigned InBoxDrawing Box_Drawing Common Zyyy So S Gr_Base Grapheme_Base Graph GrBase Other_Symbol Pat_Syn Pattern_Syntax PatSyn Print Symbol Unicode X_POSIX_Graph X_POSIX_Print

uniprops U+253c U+253C ‹┼› \N{BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL} \pS \p{So} All Any Assigned InBoxDrawing Box_Drawing Common Zyyy So S Gr_Base Grapheme_Base Graph GrBase Other_Symbol Pat_Syn Pattern_Syntax PatSyn Print Symbol Unicode X_POSIX_Graph X_POSIX_Print

delimiter characters

Either of these two characters may be data delimiters, the ascii vertical bar or the unicode "BOX DRAWINGS LIGHT VERTICAL":

|│

SEE ALSO

Table::BoxFormat perlrecharclass

AUTHOR

Joseph Brenner, <doom@kzsu.stanford.edu>

COPYRIGHT AND LICENSE

Copyright (C) 2016 by Joseph Brenner

This program is free software; you can redistribute it and/or modify it under the terms of either: the GNU General Public License as published by the Free Software Foundation; or the Artistic License.

See http://dev.perl.org/licenses/ for more information.

2 POD Errors

The following errors were encountered while parsing the POD:

Around line 137:

You forgot a '=back' before '=head1'

Around line 146:

Non-ASCII character seen before =encoding in '‹│›'. Assuming UTF-8