0.0.8 • Published 12 years ago
string-extended v0.0.8
string-extended
string-extended is a Javascript library that can be used standalone or incorporated into extended
var string = require("string-extended");Or
var myextended = require("extended")
.register(require("string-extended"));Installation
npm install string-extendedOr download the source (minified)
Usage
toArray
Converts a string to an array
string.toArray("a|b|c|d", "|") => ["a","b","c","d"]
string.toArray("a", "|") => ["a"]
string.toArray("", "|") => []pad
Pads a string
//pad at the end
string.pad("STR", 5, " ", true) => "STR "
//pad at the beginning
string.pad("STR", 5, "$") => "$$STR"truncate
Truncates a string to the specified length.
//from the beginning
string.truncate("abcdefg", 3) => "abc";
//from the end
string.truncate("abcdefg", 3,true) => "efg"
//omit the length
string.truncate("abcdefg") => "abcdefg"multiply
Returns a string duplicated n times
string.multiply("HELLO", 5) => "HELLOHELLOHELLOHELLOHELLO"escape
Escapes a string so that it can safely be used in a RegExp.
stringExtended.escape(".$?*|{}()[]\/+^"); "//\.\$\?\*\|\{\}\(\)\[\]\/\+\^"
stringExtended(".$?*|{}()[]\/+^").escape().value(); "//\.\$\?\*\|\{\}\(\)\[\]\/\+\^"You can also specify an optional array of characters to ignore when escaping.
stringExtended.escape(".$?*|{}()[]\/+^", [".", "?", "{", "["]); //".\$?\*\|{\}\(\)[\]\/\+\^"
stringExtended(".$?*|{}()[]\/+^").escape([".", "?", "{", "["]).value(); //".\$?\*\|{\}\(\)[\]\/\+\^"trim
Trims white space characters from the beginning and end of a string.
stringExtended.trim(" Hello World "); //"Hello World"
stringExtended(" Hello World ").trim().value(); //"Hello World"trimLeft
Trims white space characters from the beginning of a string.
stringExtended.trimLeft(" Hello World "); //"Hello World "
stringExtended(" Hello World ").trimLeft().value(); //"Hello World "trimRight
Trims white space characters from the end of a string.
stringExtended.trimLeft(" Hello World "); //" Hello World"
stringExtended(" Hello World ").trimLeft().value(); //" Hello World"format
Formats a string with the specified format.
- String Formats %optionss
- : left justified
- Char : padding character Excludes d,j,s
- Number : width
- Number Formats %optionsd
- : left justified
- : signed number
- Char : padding character Excludes d,j,s
- Number : width
- Object Formats %optionsj
- Number : spacing for object properties.
var format = string.format;
format("%s, %s", ["Hello", "World"]) => "Hello, World";
format("%[ 10]s, %[- 10]s", ["Hello", "World"]); //" Hello, World ";
format("%-!10s, %#10s, %10s and %-10s", "apple", "orange", "bananas", "watermelons")
//"apple!!!!!, ####orange, bananas and watermelon"
format("%+d, %+d, %10d, %-10d, %-+#10d, %10d", 1,-2, 1, 2, 3, 100000000000)
//"+1, -2, 0000000001, 2000000000, +3########, 1000000000"
format("%[h:mm a]D", [date]) => 7:32 PM - local -
format("%[h:mm a]Z", [date]) => 12:32 PM - UTC
//When using object formats they must be in an array otherwise
//format will try to interpolate the properties into the string.
format("%j", [{a : "b"}]); //'{"a":"b"}'
format("%1j, %4j", [{a : "b"}, {a : "b"}]); //'{\n "a": "b"\n},\n{\n "a": "b"\n}'
format("{hello}, {world}", {hello : "Hello", world : "World"); //"Hello, World";
format({[-s10]apple}, {[%#10]orange}, {[10]banana} and {[-10]watermelons}",{
apple : "apple",
orange : "orange",
banana : "bananas",
watermelons : "watermelons"
}); //"applesssss, ####orange, bananas and watermelon"style
Styles a string according to the specified styles.
- bold
- bright
- italic
- underline
- inverse
- crossedOut
- blink
- red
- green
- yellow
- blue
- magenta
- cyan
- white
- redBackground
- greenBackground
- yellowBackground
- blueBackground
- magentaBackground
- cyanBackground
- whiteBackground
- grey
- black
//style a string red
string.style('myStr', 'red');
//style a string red and bold
string.style('myStr', ['red', bold]);characters
SMILEY:☺SOLID_SMILEY:☻HEART:♥DIAMOND:♦CLOVE:♣SPADE:♠DOT:•SQUARE_CIRCLE:◘CIRCLE:○FILLED_SQUARE_CIRCLE:◙MALE:♂FEMALE:♀EIGHT_NOTE:♪DOUBLE_EIGHTH_NOTE:♫SUN:☼PLAY:►REWIND:◄UP_DOWN:↕PILCROW:¶SECTION:§THICK_MINUS:▬SMALL_UP_DOWN:↨UP_ARROW:↑DOWN_ARROW:↓RIGHT_ARROW:→LEFT_ARROW:←RIGHT_ANGLE:∟LEFT_RIGHT_ARROW:↔TRIANGLE:▲DOWN_TRIANGLE:▼HOUSE:⌂C_CEDILLA:ÇU_UMLAUT:üE_ACCENT:éA_LOWER_CIRCUMFLEX:âA_LOWER_UMLAUT:äA_LOWER_GRAVE_ACCENT:àA_LOWER_CIRCLE_OVER:åC_LOWER_CIRCUMFLEX:çE_LOWER_CIRCUMFLEX:êE_LOWER_UMLAUT:ëE_LOWER_GRAVE_ACCENT:èI_LOWER_UMLAUT:ïI_LOWER_CIRCUMFLEX:îI_LOWER_GRAVE_ACCENT:ìA_UPPER_UMLAUT:ÄA_UPPER_CIRCLE:ÅE_UPPER_ACCENT:ÉA_E_LOWER:æA_E_UPPER:ÆO_LOWER_CIRCUMFLEX:ôO_LOWER_UMLAUT:öO_LOWER_GRAVE_ACCENT:òU_LOWER_CIRCUMFLEX:ûU_LOWER_GRAVE_ACCENT:ùY_LOWER_UMLAUT:ÿO_UPPER_UMLAUT:ÖU_UPPER_UMLAUT:ÜCENTS:¢POUND:£YEN:¥CURRENCY:¤PTS:₧FUNCTION:ƒA_LOWER_ACCENT:áI_LOWER_ACCENT:íO_LOWER_ACCENT:óU_LOWER_ACCENT:úN_LOWER_TILDE:ñN_UPPER_TILDE:ÑA_SUPER:ªO_SUPER:ºUPSIDEDOWN_QUESTION:¿SIDEWAYS_L:⌐NEGATION:¬ONE_HALF:½ONE_FOURTH:¼UPSIDEDOWN_EXCLAMATION:¡DOUBLE_LEFT:«DOUBLE_RIGHT:»LIGHT_SHADED_BOX:░MEDIUM_SHADED_BOX:▒DARK_SHADED_BOX:▓VERTICAL_LINE:│MAZE__SINGLE_RIGHT_T:┤MAZE_SINGLE_RIGHT_TOP:┐MAZE_SINGLE_RIGHT_BOTTOM_SMALL:┘MAZE_SINGLE_LEFT_TOP_SMALL:┌MAZE_SINGLE_LEFT_BOTTOM_SMALL:└MAZE_SINGLE_LEFT_T:├MAZE_SINGLE_BOTTOM_T:┴MAZE_SINGLE_TOP_T:┬MAZE_SINGLE_CENTER:┼MAZE_SINGLE_HORIZONTAL_LINE:─MAZE_SINGLE_RIGHT_DOUBLECENTER_T:╡MAZE_SINGLE_RIGHT_DOUBLE_BL:╛MAZE_SINGLE_RIGHT_DOUBLE_T:╢MAZE_SINGLE_RIGHT_DOUBLEBOTTOM_TOP:╖MAZE_SINGLE_RIGHT_DOUBLELEFT_TOP:╕MAZE_SINGLE_LEFT_DOUBLE_T:╞MAZE_SINGLE_BOTTOM_DOUBLE_T:╧MAZE_SINGLE_TOP_DOUBLE_T:╤MAZE_SINGLE_TOP_DOUBLECENTER_T:╥MAZE_SINGLE_BOTTOM_DOUBLECENTER_T:╨MAZE_SINGLE_LEFT_DOUBLERIGHT_BOTTOM:╘MAZE_SINGLE_LEFT_DOUBLERIGHT_TOP:╒MAZE_SINGLE_LEFT_DOUBLEBOTTOM_TOP:╓MAZE_SINGLE_LEFT_DOUBLETOP_BOTTOM:╙MAZE_SINGLE_LEFT_TOP:ΓMAZE_SINGLE_RIGHT_BOTTOM:╜MAZE_SINGLE_LEFT_CENTER:╟MAZE_SINGLE_DOUBLECENTER_CENTER:╫MAZE_SINGLE_DOUBLECROSS_CENTER:╪MAZE_DOUBLE_LEFT_CENTER:╣MAZE_DOUBLE_VERTICAL:║MAZE_DOUBLE_RIGHT_TOP:╗MAZE_DOUBLE_RIGHT_BOTTOM:╝MAZE_DOUBLE_LEFT_BOTTOM:╚MAZE_DOUBLE_LEFT_TOP:╔MAZE_DOUBLE_BOTTOM_T:╩MAZE_DOUBLE_TOP_T:╦MAZE_DOUBLE_LEFT_T:╠MAZE_DOUBLE_HORIZONTAL:═MAZE_DOUBLE_CROSS:╬SOLID_RECTANGLE:█THICK_LEFT_VERTICAL:▌THICK_RIGHT_VERTICAL:▐SOLID_SMALL_RECTANGLE_BOTTOM:▄SOLID_SMALL_RECTANGLE_TOP:▀PHI_UPPER:ΦINFINITY:∞INTERSECTION:∩DEFINITION:≡PLUS_MINUS:±GT_EQ:≥LT_EQ:≤THEREFORE:⌠SINCE:∵DOESNOT_EXIST:∄EXISTS:∃FOR_ALL:∀EXCLUSIVE_OR:⊕BECAUSE:⌡DIVIDE:÷APPROX:≈DEGREE:°BOLD_DOT:∙DOT_SMALL:·CHECK:√ITALIC_X:✗SUPER_N:ⁿSQUARED:²CUBED:³SOLID_BOX:■PERMILE:‰REGISTERED_TM:®COPYRIGHT:©TRADEMARK:™BETA:βGAMMA:γZETA:ζETA:ηIOTA:ιKAPPA:κLAMBDA:λNU:νXI:ξOMICRON:οRHO:ρUPSILON:υCHI_LOWER:φCHI_UPPER:χPSI:ψALPHA:αESZETT:ßPI:πSIGMA_UPPER:ΣSIGMA_LOWER:σMU:µTAU:τTHETA:ΘOMEGA:ΩDELTA:δPHI_LOWER:φEPSILON: "ε"

