{"id":21831364,"url":"https://github.com/nodef/extra-string","last_synced_at":"2025-04-14T07:07:57.116Z","repository":{"id":33819763,"uuid":"149915096","full_name":"nodef/extra-string","owner":"nodef","description":"A collection of common string functions.","archived":false,"fork":false,"pushed_at":"2025-04-08T17:12:44.000Z","size":434,"stargazers_count":7,"open_issues_count":2,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-12T11:58:32.241Z","etag":null,"topics":["at","compare-function","digits","extra","hex-digits","infix","is-infix","is-prefix","is-suffix","left","letters","lowercase","map-function","prefix","replace-function","right","size","string","suffix","test-function"],"latest_commit_sha":null,"homepage":"https://www.npmjs.com/package/extra-string","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nodef.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2018-09-22T20:27:41.000Z","updated_at":"2025-04-08T17:12:45.000Z","dependencies_parsed_at":"2023-01-15T02:45:28.075Z","dependency_job_id":"2da5c4aa-37dc-458e-b587-55dea17b687f","html_url":"https://github.com/nodef/extra-string","commit_stats":{"total_commits":61,"total_committers":1,"mean_commits":61.0,"dds":0.0,"last_synced_commit":"f469202ff6930fb560ccfcb50b579f54b69997cd"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nodef%2Fextra-string","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nodef%2Fextra-string/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nodef%2Fextra-string/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nodef%2Fextra-string/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nodef","download_url":"https://codeload.github.com/nodef/extra-string/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248565060,"owners_count":21125415,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["at","compare-function","digits","extra","hex-digits","infix","is-infix","is-prefix","is-suffix","left","letters","lowercase","map-function","prefix","replace-function","right","size","string","suffix","test-function"],"created_at":"2024-11-27T19:09:59.338Z","updated_at":"2025-04-14T07:07:57.099Z","avatar_url":"https://github.com/nodef.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"A collection of common string functions.\u003cbr\u003e\n📦 [Node.js](https://www.npmjs.com/package/extra-string),\n🌐 [Web](https://www.npmjs.com/package/extra-string.web),\n📜 [Files](https://unpkg.com/extra-string/),\n📰 [Docs](https://nodef.github.io/extra-string/).\n\nA [string] is a sequence of characters. In JavaScript, strings are not\n[mutable]. Any transfomation of a *string*, such as `slice` or `concat`\ngenerates a *new string*. The *JavaScript runtime* however may optimize this\nbehavior by *mutating strings behind the scenes*, when it can be guarenteed that\nthe previous string is *not accessible* to the programmer. The *runtime* may\nalso *avoid copying slices* of a string, or even *concatenation of slices of*\n*strings*, by implementing it as a *series of lookups into existing strings*.\nFood for thought.\n\nThis package provides functions for generating [spaces]; querying **about** a\nstring such as [is], [isEmpty], [isCharacter], [index], [indexRange],\n[codePointRange]; **comparing** strings such as [compare], [isEqual]; getting\n**parts** of a string such as [get], [getAll], [set], [begin], [middle], [end];\n**searching** a string such as [longestCommonInfix], [longestCommonPrefix],\n[longestCommonSuffix], [longestUncommonInfixes]; **transforming** a string such\nas [toBaseline], [toSuperscript], [toSubscript]; **transforming case** of a\nstring such as [toKebabCase], [toSnakeCase], [toCamelCase], [toPascalCase];\nfinding **ngrams** in strings such as [ngrams], [uniqueNgrams], [countNgrams],\n[countUniqueNgrams], [countEachNgram], [matchingNgrams], [uniqueMatchingNgrams],\n[countMatchingNgrams], [countEachMatchingNgram], [countUniqueMatchingNgrams];\nand finding **similarity/distance** between strings such as [euclideanDistance],\n[hammingDistance], [jaccardIndex], [jaccardDistance], [sorensenDiceIndex],\n[sorensenDiceDistance], [tverskyIndex], [tverskyDistance], [jaroSimilarity],\n[jaroDistance], [jaroWinklerSimilarity], [jaroWinklerDistance],\n[levenshteinDistance], [damerauLevenshteinDistance].\n\nThis package also provides **Array-like functions** for strings. These includes\nfunctions for **generating** a string such as [of], [from]; **transforming** a\nstring such as [splice], [reverse], [sort]; and **functional behavior** such as\n[filter]. All **built-in** string functions are also included. Finally,\n**constants** for *ASCII characters*, and *minimum/maximum code point* are\nincluded.\n\nThis package is available in both *Node.js* and *Web* formats. The web format\nis exposed as `extra_string` standalone variable and can be loaded from\n[jsDelivr CDN].\n\n[string]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String\n[mutable]: https://developer.mozilla.org/en-US/docs/Glossary/Mutable\n[jsDelivr CDN]: https://cdn.jsdelivr.net/npm/extra-string.web/index.js\n\n\u003e Stability: [Experimental](https://www.youtube.com/watch?v=L1j93RnIxEo).\n\n\u003cbr\u003e\n\n\n```javascript\nconst string = require('extra-string');\n// import * as string from \"extra-string\";\n// import * as string from \"https://unpkg.com/extra-string/index.mjs\"; (deno)\n\nstring.longestCommonInfix('dismiss', 'mississipi');\n// → 'miss'\n\nstring.longestUncommonInfixes('chocolatier', 'engineer');\n// → ['chocolati', 'engine']\n\nstring.toKebabCase('Malwa Plateau');\n// → 'malwa-plateau'\n\n'6.626 x 10' + string.toSuperscript('-34');\n// → '6.626 x 10⁻³⁴' (Planck's constant)\n\nstring.tverskyDistance('pikachu', 'raichu', 3, 0.2, 0.4);\n// → 0.6666666666666667\n```\n\n\u003cbr\u003e\n\u003cbr\u003e\n\n\n## Index\n\n| Property | Description |\n|  ----  |  ----  |\n| [DIGITS] | Decimal digits 0-9. |\n| [OCT_DIGITS] | Octal digits 0-7. |\n| [HEX_DIGITS] | Hexadecimal digits 0-9, A-F, a-f. |\n| [UPPERCASE] | English letters A-Z. |\n| [LOWERCASE] | English letters a-z. |\n| [LETTERS] | Combination of uppercase, lowercase english letters. |\n| [PUNCTUATION] | Punctuation symbols (ASCII). |\n| [WHITESPACE] | The string \"\\t\\n\\x0b\\x0c\\r \". |\n| [PRINTABLE] | Combination of digits, letters, punctuation, and whitespace (ASCII). |\n| [MIN_CODE_POINT] | Minimum unicode code point. |\n| [MAX_CODE_POINT] | Maximum unicode code point. |\n|  |  |\n| [fromCharCode] | Get characters whose UTF-16 code units are given. |\n| [fromCodePoint] | Get characters whose unicode code points are given. |\n| [concat] | Combine multiple strings into one. |\n| [repeat] | Repeat string given number of times. |\n|  |  |\n| [valueOf] | Get primitive value of string object. |\n| [length] | Get length of string. |\n| [charAt] | Get character at given index in string. |\n| [charCodeAt] | Get UTF-16 code unit of a character in string. |\n| [codePointAt] | Get unicode code point of a character in string. |\n|  |  |\n| [localeCompare] | Compare two strings in the current or given locale. |\n|  |  |\n| [includes] | Check if string has a given infix. |\n| [startsWith] | Check if string has a given prefix. |\n| [endsWith] | Check if string has a given suffix. |\n| [indexOf] | Get first index of a given infix in string. |\n| [lastIndexOf] | Get last index of a given infix in string. |\n| [search] | Get first index of regular expression match in string. |\n| [match] | Get results of matching string with regular expression. |\n| [matchAll] | Get detailed results of matching string with regular expression. |\n|  |  |\n| [toString] | Get string representation of string. |\n|  |  |\n| [slice] | Extract section of string. |\n| [substring] | Extract section of string. |\n| [split] | Split string by a given separator into substrings. |\n|  |  |\n| [trimStart] | Remove whitespace from begining of string. |\n| [trimEnd] | Remove whitespace from end of string. |\n| [trim] | Remove whitespace from begining and end of string. |\n| [padStart] | Pad start of string to fit a desired length. |\n| [padEnd] | Pad end of string to fit a desired length. |\n|  |  |\n| [toUpperCase] | Convert string to upper case. |\n| [toLocaleUpperCase] | Convert string to upper case, as per locale-specific case mappings. |\n| [toLowerCase] | Convert string to lower case. |\n| [toLocaleLowerCase] | Convert string to lower case, as per locale-specific case mappings. |\n|  |  |\n| [replace] | Replace first match of given pattern by replacement. |\n| [normalize] | Normalize string by given form, as per Unicode Standard Annex #15. |\n|  |  |\n| [of] | Create string from arguments, like `Array.of()`. |\n| [from] | Create string from iterable, like `Array.from()`. |\n|  |  |\n| [splice] | Remove/replace characters in a string. |\n| [reverse] | Reverse a string. |\n| [sort] | Arrange characters in an order. |\n|  |  |\n| [filter] | Filter characters which pass a test. |\n|  |  |\n| [spaces] | Get a string of spaces. |\n|  |  |\n| [is] | Check if value is a string. |\n| [isEmpty] | Check if string is empty. |\n| [isCharacter] | Check if string is a character. |\n| [index] | Get non-negative index within string. |\n| [indexRange] | Get non-negative index range within string. |\n| [codePointRange] | Get unicode code point range of string. |\n|  |  |\n| [compare] | Compare two strings. |\n| [isEqual] | Check if two strings are equal. |\n|  |  |\n| [get] | Get character at a given index in string. |\n| [getAll] | Get characters at indices. |\n| [set] | Write a substring at specified index in string. |\n| [begin] | Get leftmost part of string. |\n| [middle] | Get a portion of string from middle. |\n| [end] | Get rightmost part of string. |\n|  |  |\n| [longestCommonInfix] | Get the longest common infix between strings. |\n| [longestCommonPrefix] | Get the longest common prefix of strings. |\n| [longestCommonSuffix] | Get the longest common suffix of strings. |\n| [longestUncommonInfixes] | Get the longest uncommon infixes of strings. |\n|  |  |\n| [toBaseline] | Convert a string to baseline characters (limited support). |\n| [toSuperscript] | Convert a string to superscript characters (limited support). |\n| [toSubscript] | Convert a string to superscript characters (limited support). |\n|  |  |\n| [toKebabCase] | Convert a string to kebab-case. |\n| [toSnakeCase] | Convert a string to snake-case. |\n| [toCamelCase] | Convert a string to camel-case. |\n| [toPascalCase] | Convert a string to pascal-case. |\n|  |  |\n| [ngrams] | Get n-grams of a string. |\n| [uniqueNgrams] | Find unique n-grams of a string. |\n| [countNgrams] | Count the total number of n-grams of a string. |\n| [countUniqueNgrams] | Count the total number of unique n-grams of a string. |\n| [countEachNgram] | Count each n-gram of a string. |\n| [matchingNgrams] | Get matching n-grams between strings. |\n| [uniqueMatchingNgrams] | Get unique matching n-grams between strings. |\n| [countMatchingNgrams] | Count the total number of matching n-grams between strings. |\n| [countEachMatchingNgram] | Count each matching n-gram between strings. |\n| [countUniqueMatchingNgrams] | Count the total number of unique matching n-grams between strings. |\n|  |  |\n| [euclideanDistance] | Get euclidean distance between strings. |\n| [hammingDistance] | Get hamming distance between strings. |\n| [jaccardIndex] | Get jaccard index between strings. |\n| [jaccardDistance] | Get jaccard distance between strings. |\n| [sorensenDiceIndex] | Get Sørensen-Dice index between strings. |\n| [sorensenDiceDistance] | Get Sørensen-Dice distance between strings. |\n| [tverskyIndex] | Get Tversky index between strings. |\n| [tverskyDistance] | Get Tversky distance between strings. |\n| [jaroSimilarity] | Get Jaro similarity between strings. |\n| [jaroDistance] | Get Jaro distance between strings. |\n| [jaroWinklerSimilarity] | Get Jaro-Winkler similarity between strings. |\n| [jaroWinklerDistance] | Get Jaro-Winkler distance between strings. |\n| [levenshteinDistance] | Get Levenshtein distance between strings. |\n| [damerauLevenshteinDistance] | Get Damerau–Levenshtein distance between strings. |\n\n\n\u003cbr\u003e\n\u003cbr\u003e\n\n\n## References\n\n- [MDN Web docs](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference)\n- [Lodash documentation](https://lodash.com/docs/4.17.15)\n- [natural package by Chris Umbel and contributors](https://www.npmjs.com/package/natural)\n- [esrever package by Mathias Bynens and contributors](https://www.npmjs.com/package/esrever)\n- [js-string-compression package by Chen Caishun](https://github.com/cschen1205/js-string-compression)\n- [@stdlib/string-base-trim package by @stdlib-js](https://github.com/stdlib-js/string-base-trim)\n- [How do you reverse a string in-place in JavaScript?](https://stackoverflow.com/a/959004/1413259)\n\n\u003cbr\u003e\n\u003cbr\u003e\n\n\n[![](https://img.youtube.com/vi/zi0w7J7MCrk/maxresdefault.jpg)](https://www.youtube.com/watch?v=zi0w7J7MCrk)\u003cbr\u003e\n[![ORG](https://img.shields.io/badge/org-nodef-green?logo=Org)](https://nodef.github.io)\n[![DOI](https://zenodo.org/badge/149915096.svg)](https://zenodo.org/badge/latestdoi/149915096)\n[![Coverage Status](https://coveralls.io/repos/github/nodef/extra-string/badge.svg?branch=master)](https://coveralls.io/github/nodef/extra-string?branch=master)\n[![Test Coverage](https://api.codeclimate.com/v1/badges/1d8fb20d076d49a0f671/test_coverage)](https://codeclimate.com/github/nodef/extra-string/test_coverage)\n[![Maintainability](https://api.codeclimate.com/v1/badges/1d8fb20d076d49a0f671/maintainability)](https://codeclimate.com/github/nodef/extra-string/maintainability)\n![](https://ga-beacon.deno.dev/G-RC63DPBH3P:SH3Eq-NoQ9mwgYeHWxu7cw/github.com/nodef/extra-string)\n\n[DIGITS]: https://nodef.github.io/extra-string/modules.html#DIGITS\n[OCT_DIGITS]: https://nodef.github.io/extra-string/modules.html#OCT_DIGITS\n[HEX_DIGITS]: https://nodef.github.io/extra-string/modules.html#HEX_DIGITS\n[UPPERCASE]: https://nodef.github.io/extra-string/modules.html#UPPERCASE\n[LOWERCASE]: https://nodef.github.io/extra-string/modules.html#LOWERCASE\n[LETTERS]: https://nodef.github.io/extra-string/modules.html#LETTERS\n[PUNCTUATION]: https://nodef.github.io/extra-string/modules.html#PUNCTUATION\n[WHITESPACE]: https://nodef.github.io/extra-string/modules.html#WHITESPACE\n[PRINTABLE]: https://nodef.github.io/extra-string/modules.html#PRINTABLE\n[MIN_CODE_POINT]: https://nodef.github.io/extra-string/modules.html#MIN_CODE_POINT\n[MAX_CODE_POINT]: https://nodef.github.io/extra-string/modules.html#MAX_CODE_POINT\n[fromCharCode]: https://nodef.github.io/extra-string/modules.html#fromCharCode\n[fromCodePoint]: https://nodef.github.io/extra-string/modules.html#fromCodePoint\n[concat]: https://nodef.github.io/extra-string/modules.html#concat\n[repeat]: https://nodef.github.io/extra-string/modules.html#repeat\n[valueOf]: https://nodef.github.io/extra-string/modules.html#valueOf\n[length]: https://nodef.github.io/extra-string/modules.html#length\n[charAt]: https://nodef.github.io/extra-string/modules.html#charAt\n[charCodeAt]: https://nodef.github.io/extra-string/modules.html#charCodeAt\n[codePointAt]: https://nodef.github.io/extra-string/modules.html#codePointAt\n[localeCompare]: https://nodef.github.io/extra-string/modules.html#localeCompare\n[includes]: https://nodef.github.io/extra-string/modules.html#includes\n[startsWith]: https://nodef.github.io/extra-string/modules.html#startsWith\n[endsWith]: https://nodef.github.io/extra-string/modules.html#endsWith\n[indexOf]: https://nodef.github.io/extra-string/modules.html#indexOf\n[lastIndexOf]: https://nodef.github.io/extra-string/modules.html#lastIndexOf\n[search]: https://nodef.github.io/extra-string/modules.html#search\n[match]: https://nodef.github.io/extra-string/modules.html#match\n[matchAll]: https://nodef.github.io/extra-string/modules.html#matchAll\n[toString]: https://nodef.github.io/extra-string/modules.html#toString\n[slice]: https://nodef.github.io/extra-string/modules.html#slice\n[substring]: https://nodef.github.io/extra-string/modules.html#substring\n[split]: https://nodef.github.io/extra-string/modules.html#split\n[trimStart]: https://nodef.github.io/extra-string/modules.html#trimStart\n[trimEnd]: https://nodef.github.io/extra-string/modules.html#trimEnd\n[trim]: https://nodef.github.io/extra-string/modules.html#trim\n[padStart]: https://nodef.github.io/extra-string/modules.html#padStart\n[padEnd]: https://nodef.github.io/extra-string/modules.html#padEnd\n[toUpperCase]: https://nodef.github.io/extra-string/modules.html#toUpperCase\n[toLocaleUpperCase]: https://nodef.github.io/extra-string/modules.html#toLocaleUpperCase\n[toLowerCase]: https://nodef.github.io/extra-string/modules.html#toLowerCase\n[toLocaleLowerCase]: https://nodef.github.io/extra-string/modules.html#toLocaleLowerCase\n[replace]: https://nodef.github.io/extra-string/modules.html#replace\n[normalize]: https://nodef.github.io/extra-string/modules.html#normalize\n[of]: https://nodef.github.io/extra-string/modules.html#of\n[from]: https://nodef.github.io/extra-string/modules.html#from\n[splice]: https://nodef.github.io/extra-string/modules.html#splice\n[reverse]: https://nodef.github.io/extra-string/modules.html#reverse\n[sort]: https://nodef.github.io/extra-string/modules.html#sort\n[filter]: https://nodef.github.io/extra-string/modules.html#filter\n[spaces]: https://nodef.github.io/extra-string/modules.html#spaces\n[is]: https://nodef.github.io/extra-string/modules.html#is\n[isEmpty]: https://nodef.github.io/extra-string/modules.html#isEmpty\n[isCharacter]: https://nodef.github.io/extra-string/modules.html#isCharacter\n[index]: https://nodef.github.io/extra-string/modules.html#index\n[indexRange]: https://nodef.github.io/extra-string/modules.html#indexRange\n[codePointRange]: https://nodef.github.io/extra-string/modules.html#codePointRange\n[compare]: https://nodef.github.io/extra-string/modules.html#compare\n[isEqual]: https://nodef.github.io/extra-string/modules.html#isEqual\n[get]: https://nodef.github.io/extra-string/modules.html#get\n[getAll]: https://nodef.github.io/extra-string/modules.html#getAll\n[set]: https://nodef.github.io/extra-string/modules.html#set\n[begin]: https://nodef.github.io/extra-string/modules.html#begin\n[middle]: https://nodef.github.io/extra-string/modules.html#middle\n[end]: https://nodef.github.io/extra-string/modules.html#end\n[longestCommonInfix]: https://nodef.github.io/extra-string/modules.html#longestCommonInfix\n[longestCommonPrefix]: https://nodef.github.io/extra-string/modules.html#longestCommonPrefix\n[longestCommonSuffix]: https://nodef.github.io/extra-string/modules.html#longestCommonSuffix\n[longestUncommonInfixes]: https://nodef.github.io/extra-string/modules.html#longestUncommonInfixes\n[toBaseline]: https://nodef.github.io/extra-string/modules.html#toBaseline\n[toSuperscript]: https://nodef.github.io/extra-string/modules.html#toSuperscript\n[toSubscript]: https://nodef.github.io/extra-string/modules.html#toSubscript\n[toKebabCase]: https://nodef.github.io/extra-string/modules.html#toKebabCase\n[toSnakeCase]: https://nodef.github.io/extra-string/modules.html#toSnakeCase\n[toCamelCase]: https://nodef.github.io/extra-string/modules.html#toCamelCase\n[toPascalCase]: https://nodef.github.io/extra-string/modules.html#toPascalCase\n[ngrams]: https://nodef.github.io/extra-string/modules.html#ngrams\n[uniqueNgrams]: https://nodef.github.io/extra-string/modules.html#uniqueNgrams\n[countNgrams]: https://nodef.github.io/extra-string/modules.html#countNgrams\n[countUniqueNgrams]: https://nodef.github.io/extra-string/modules.html#countUniqueNgrams\n[countEachNgram]: https://nodef.github.io/extra-string/modules.html#countEachNgram\n[matchingNgrams]: https://nodef.github.io/extra-string/modules.html#matchingNgrams\n[uniqueMatchingNgrams]: https://nodef.github.io/extra-string/modules.html#uniqueMatchingNgrams\n[countMatchingNgrams]: https://nodef.github.io/extra-string/modules.html#countMatchingNgrams\n[countEachMatchingNgram]: https://nodef.github.io/extra-string/modules.html#countEachMatchingNgram\n[countUniqueMatchingNgrams]: https://nodef.github.io/extra-string/modules.html#countUniqueMatchingNgrams\n[euclideanDistance]: https://nodef.github.io/extra-string/modules.html#euclideanDistance\n[hammingDistance]: https://nodef.github.io/extra-string/modules.html#hammingDistance\n[jaccardIndex]: https://nodef.github.io/extra-string/modules.html#jaccardIndex\n[jaccardDistance]: https://nodef.github.io/extra-string/modules.html#jaccardDistance\n[sorensenDiceIndex]: https://nodef.github.io/extra-string/modules.html#sorensenDiceIndex\n[sorensenDiceDistance]: https://nodef.github.io/extra-string/modules.html#sorensenDiceDistance\n[tverskyIndex]: https://nodef.github.io/extra-string/modules.html#tverskyIndex\n[tverskyDistance]: https://nodef.github.io/extra-string/modules.html#tverskyDistance\n[jaroSimilarity]: https://nodef.github.io/extra-string/modules.html#jaroSimilarity\n[jaroDistance]: https://nodef.github.io/extra-string/modules.html#jaroDistance\n[jaroWinklerSimilarity]: https://nodef.github.io/extra-string/modules.html#jaroWinklerSimilarity\n[jaroWinklerDistance]: https://nodef.github.io/extra-string/modules.html#jaroWinklerDistance\n[levenshteinDistance]: https://nodef.github.io/extra-string/modules.html#levenshteinDistance\n[damerauLevenshteinDistance]: https://nodef.github.io/extra-string/modules.html#damerauLevenshteinDistance\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnodef%2Fextra-string","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnodef%2Fextra-string","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnodef%2Fextra-string/lists"}