forked from DerivcoIpswich/dsharp
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathString.js
More file actions
86 lines (80 loc) · 2.21 KB
/
Copy pathString.js
File metadata and controls
86 lines (80 loc) · 2.21 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
// String
function string(arg1, arg2) {
if (typeof arg2 == 'number') {
return arg2 > 1 ? new Array(arg2 + 1).join(arg1) : arg1;
}
return Array.prototype.join.call(arguments, '');
}
function emptyString(s) {
return !s || !s.length;
}
function whitespace(s) {
return emptyString(s) || !s.replace(/^\s*/, '').length;
}
function compareStrings(s1, s2, ignoreCase) {
s1 = s1 || '', s2 = s2 || '';
ignoreCase ? (s1 = s1.toUpperCase(), s2 = s2.toUpperCase()) : 0;
return (s1 === s2) ? 0 : (s1 < s2) ? -1 : 1;
}
function trim(s, tc) {
if (tc || !String.prototype.trim) {
tc = tc ? tc.join('') : null;
var r = tc ? new RegExp('^[' + tc + ']+|[' + tc + ']+$', 'g') : /^\s+|\s+$/g;
return s.replace(r, '');
}
return s.trim();
}
function trimStart(s, tc) {
var r = tc ? new RegExp('^[' + tc.join('') + ']+') : /^\s+/;
return s.replace(r, '');
}
function trimEnd(s, tc) {
var r = tc ? new RegExp('[' + tc.join('') + ']+$') : /\s+$/;
return s.replace(r, '');
}
function startsWith(s, prefix) {
if (emptyString(prefix)) {
return true;
}
if (emptyString(s) || (prefix.length > s.length)) {
return false;
}
return s.substr(0, prefix.length) == prefix;
}
function endsWith(s, suffix) {
if (emptyString(suffix)) {
return true;
}
if (emptyString(s) || (suffix.length > s.length)) {
return false;
}
return s.substr(-suffix.length) == suffix;
}
function padLeft(s, totalWidth, ch) {
return (s.length < totalWidth)
? string(ch || ' ', totalWidth - s.length) + s
: s;
}
function padRight(s, totalWidth, ch) {
return (s.length < totalWidth)
? s + string(ch || ' ', totalWidth - s.length)
: s;
}
function removeString(s, index, count) {
if (!count || ((index + count) > s.length)) {
return s.substr(0, index);
}
return s.substr(0, index) + s.substr(index + count);
}
function insertString(s, index, value) {
if (!value) {
return s;
}
if (!index) {
return value + s;
}
return s.substr(0, index) + value + s.substr(index);
}
function replaceString(s, oldValue, newValue) {
return s.split(oldValue).join(newValue || '');
}