Advertisement
tonysamperi

015 - String utils

Aug 21st, 2022
792
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
JavaScript 1.31 KB | Source Code | 0 0
  1. class StringUtils {
  2.   static toCamelCase(s: string): string {
  3.     return s
  4.       .toLowerCase()
  5.       .replace(/[_-]/g, ' ')
  6.       .replace(/\s(.)/g, ($1: string) => {
  7.         return $1.toUpperCase();
  8.       })
  9.       .replace(/\s/g, '')
  10.       .replace(/^(.)/, ($1: string) => {
  11.         return $1.toLowerCase();
  12.       });
  13.   }
  14.  
  15.   static toKebabCase(s: string): string {
  16.     return s
  17.       .toLowerCase()
  18.       .replace(/[\s_]+/g, '-')
  19.       .replace(/\s(.)/g, ($1: string) => {
  20.         return $1.toUpperCase();
  21.       })
  22.       .replace(/^(.)/, ($1: string) => {
  23.         return $1.toLowerCase();
  24.       });
  25.   }
  26.  
  27.   static toSnakeCase(s: string): string {
  28.     return s
  29.       .toLowerCase()
  30.       .replace(/[\s-]+/g, '_')
  31.       .replace(/\s(.)/g, ($1: string) => {
  32.         return $1.toUpperCase();
  33.       })
  34.       .replace(/^(.)/, ($1: string) => {
  35.         return $1.toLowerCase();
  36.       });
  37.   }
  38.  
  39.   static toUpperSnakeCase(s: string): string {
  40.     return this.toSnakeCase(s).toUpperCase();
  41.   }
  42. }
  43.  
  44. console.info(StringUtils.toCamelCase("abc DEF ghi"));
  45. // Output abcDefGhi
  46. console.info(StringUtils.toKebabCase("abc DEF ghi"));
  47. // Output abc-def-ghi
  48. console.info(StringUtils.toSnakeCase("abc DEF ghi"));
  49. // Output abc_def_ghi
  50. console.info(StringUtils.toUpperSnakeCase("abc DEF ghi"));
  51. // Output ABC_DEF_GHI
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement