logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

SHARYANTO::String::Util - String utilities

Author

       Steven Haryanto <stevenharyanto@gmail.com>

Bugs

       Please     report     any     bugs     or     feature     requests     on    the    bugtracker    website
       https://rt.cpan.org/Public/Dist/Display.html?Name=SHARYANTO-String-Util

       When submitting a bug or request, please include a test-file or a patch to  an  existing  test-file  that
       illustrates the bug or desired feature.

Description

Functions

ltrim($str)=>STR
       Trim whitespaces (including newlines) at the beginning of string. Equivalent to:

        $str =~ s/\A\s+//s;

   ltrim_lines($str)=>STR
       Trim whitespaces (not including newlines) at the beginning of each line of string. Equivalent to:

        $str =~ s/^\s+//mg;

   rtrim($str)=>STR
       Trim whitespaces (including newlines) at the end of string. Equivalent to:

        $str =~ s/[ \t]+\z//s;

   rtrim_lines($str)=>STR
       Trim whitespaces (not including newlines) at the end of each line of string. Equivalent to:

        $str =~ s/[ \t]+$//mg;

   trim($str)=>STR
       ltrim + rtrim.

   trim_lines($str)=>STR
       ltrim_lines + rtrim_lines.

   trim_blank_lines($str)=>STR
       Trim blank lines at the beginning and the end. Won't trim blank lines in the middle. Blank lines include
       lines with only whitespaces in them.

   ellipsis($str[,$maxlen,$ellipsis])=>STR
       Return $str unmodified if $str's length is less than $maxlen (default 80).  Otherwise cut $str to
       ($maxlen - length($ellipsis)) and append $ellipsis (default '...') at the end.

   indent($indent,$str,\%opts)=>STR
       Indent every line in $str with $indent. Example:

        indent('  ', "one\ntwo\nthree") # "  one\n  two\n  three"

       %opts is optional. Known options:

       •   indent_blank_lines => BOOL (default 1)

           If set to false, does not indent blank lines (i.e., lines containing only zero or more whitespaces).

   linenum($str,\%opts)=>STR
       Add line numbers. For example:

            1|line1
            2|line2
             |
            4|line4

       Known options:

       •   width => INT (default: 4)

       •   zeropad => BOOL (default: 0)

           If turned on, will output something like:

             0001|line1
             0002|line2
                 |
             0004|line4

       •   skip_empty => BOOL (default: 1)

           If set to false, keep printing line number even if line is empty:

                1|line1
                2|line2
                3|
                4|line4

   pad($text,$width[,$which[,$padchar[,$truncate]]])=>STR
       Return  $text  padded with $padchar to $width columns. $which is either "r" or "right" for padding on the
       right (the default if not specified), "l" or "left" for padding on the  right,  or  "c"  or  "center"  or
       "centre" for left+right padding to center the text.

       $padchar is whitespace if not specified. It should be string having the width of 1 column.

   qqquote($str)=>STR
       Quote or encode $str to the Perl double quote ("qq") literal representation of the string. Example:

        say qqquote("a");        # => "a"
        say qqquote("a\n");      # => "a\n"
        say qqquote('"');        # => "\""
        say qqquote('$foo');     # => "\$foo"

       This  code is taken from quote() in Data::Dump. Maybe I didn't look more closely, but I couldn't a module
       that provides a function to do something like this. String::Escape, for example,  provides  "qqbackslash"
       but it does not escape "$".

       None are exported by default, but they are exportable.

Homepage

       Please visit the project's homepage at <https://metacpan.org/release/SHARYANTO-String-Util>.

Name

       SHARYANTO::String::Util - String utilities

See Also

       SHARYANTO

Source

       Source repository is at HASH(0x353ed90).

See Also