stringate
Version:
A lightweight JavaScript library for performing common string operations and transformations.
177 lines (150 loc) • 3.68 kB
JavaScript
// Convert string to uppercase
function toUpperCase(str) {
return str.toUpperCase();
}
// Convert string to lowercase
function toLowerCase(str) {
return str.toLowerCase();
}
// Capitalize first letter of each word *****
function capitalize(str) {
return str
.toLowerCase()
.replace(/\b\w/g, (char) => char.toUpperCase());
}
// Reverse a string
function reverse(str) {
return str.split('').reverse().join('');
}
// Check if a string is a palindrome
function isPalindrome(str) {
const cleaned = str.replace(/[^a-zA-Z0-9]/g, '').toLowerCase();
return cleaned === reverse(cleaned);
}
// Count number of vowels in a string
function countVowels(str) {
const match = str.match(/[aeiou]/gi);
return match ? match.length : 0;
}
// Remove all spaces
function removeSpaces(str) {
return str.replace(/\s+/g, '');
}
// Convert string to kebab-case
function kebabCase(str) {
return str
.replace(/\s+/g, '-')
.replace(/[A-Z]/g, (letter) => `-${letter.toLowerCase()}`)
.toLowerCase();
}
// Convert string to camelCase
function camelCase(str) {
return str
.toLowerCase()
.replace(/[^a-zA-Z0-9]+(.)/g, (_, chr) => chr.toUpperCase());
}
// Convert string to snake_case
function snakeCase(str) {
return str
.replace(/\s+/g, '_')
.replace(/[A-Z]/g, (letter) => `_${letter.toLowerCase()}`)
.toLowerCase();
}
// Concatenate multiple strings
function concat(...strings) {
return strings.join('');
}
// Check if a string includes another string
function includes(str, search) {
return str.includes(search);
}
// Check if string starts with a given substring
function startsWith(str, search) {
return str.startsWith(search);
}
// Check if string ends with a given substring
function endsWith(str, search) {
return str.endsWith(search);
}
// Get a substring from a string
function substring(str, start, end) {
return str.substring(start, end);
}
// Replace all instances of a substring
function replaceAll(str, search, replacement) {
return str.split(search).join(replacement);
}
// Split a string by a delimiter
function split(str, delimiter) {
return str.split(delimiter);
}
// Get character at specific position
function charAt(str, index) {
return str.charAt(index);
}
// Get length of the string
function stringLength(str) {
return str.length;
}
// Trim both ends
function trim(str) {
return str.trim();
}
// Trim start only
function trimStart(str) {
return str.trimStart();
}
// Trim end only
function trimEnd(str) {
return str.trimEnd();
}
// Repeat a string n times
function repeat(str, times) {
return str.repeat(times);
}
// Pad start with characters
function padStart(str, targetLength, padChar = ' ') {
return str.padStart(targetLength, padChar);
}
// Pad end with characters
function padEnd(str, targetLength, padChar = ' ') {
return str.padEnd(targetLength, padChar);
}
// Remove all special characters
function removeSpecialChars(str) {
return str.replace(/[^a-zA-Z0-9\s]/g, '');
}
// Remove all digits
function removeDigits(str) {
return str.replace(/[0-9]/g, '');
}
// Export all functions as a module
module.exports = {
toUpperCase,
toLowerCase,
capitalize,
reverse,
isPalindrome,
countVowels,
removeSpaces,
kebabCase,
camelCase,
snakeCase,
concat,
includes,
startsWith,
endsWith,
substring,
replaceAll,
split,
charAt,
stringLength,
trim,
trimStart,
trimEnd,
repeat,
padStart,
padEnd,
removeSpecialChars,
removeDigits,
};