diff --git a/Client-Side Components/Client Scripts/Generate Slug from Text/README.md b/Client-Side Components/Client Scripts/Generate Slug from Text/README.md new file mode 100644 index 0000000000..6479d5b696 --- /dev/null +++ b/Client-Side Components/Client Scripts/Generate Slug from Text/README.md @@ -0,0 +1,5 @@ +# ServiceNow JavaScript Helper + +## String Helper + +- `toSlug("Hello World!")` → `"hello-world"` \ No newline at end of file diff --git a/Client-Side Components/Client Scripts/Generate Slug from Text/slugGenerate.js b/Client-Side Components/Client Scripts/Generate Slug from Text/slugGenerate.js new file mode 100644 index 0000000000..6d7ffadc3e --- /dev/null +++ b/Client-Side Components/Client Scripts/Generate Slug from Text/slugGenerate.js @@ -0,0 +1,8 @@ +// Converts string to lowercase, removes symbols, replaces spaces with dashes +function toSlug(text) { + let str = text.toLowerCase(); + str = str.replace(/[^a-z0-9_\s-]/g, ""); + str = str.replace(/[\s-]+/g, " "); + str = str.replace(/[\s_]/g, "-"); + return str; +}; \ No newline at end of file