DEV Community

Cover image for 1 line of code: How to convert spaces to tabs
Martin Krause
Martin Krause

Posted on

1 line of code: How to convert spaces to tabs

const spacesToTabs = (str, tabsize = 4) =>
  str.replace(new RegExp(` {${tabsize}}`, "g"), "\t");
Enter fullscreen mode Exit fullscreen mode

Returns the string and replaces all tabs with the given amount of spaces (tab size).


The repository & npm package

You can find the all the utility functions from this series at github.com/martinkr/onelinecode
The library is also published to npm as @onelinecode for your convenience.

The code and the npm package will be updated every time I publish a new article.


Follow me on Twitter: @martinkr and consider to buy me a coffee

Photo by zoo_monkey on Unsplash


Subscribe to the weekly modern frontend development newsletter


Latest comments (3)

Collapse
 
jancizmar profile image
Jan Cizmar

Shorter! πŸ˜…

const spacesToTabs = (str, tabsize = 4) =>
    str.replace(/\s{${tabsize}}/g, "\t")
Enter fullscreen mode Exit fullscreen mode
Collapse
 
lexlohr profile image
Alex Lohr

This is still converting tabs to spaces, not the other way around, as advertised.

const spacesToTabs = (input, length = 4) => input.replace(new RegExp(` {${length}}`, 'g'), '\t');
Enter fullscreen mode Exit fullscreen mode
Collapse
 
martinkr profile image
Martin Krause

Hi Alex,

thank you for pointing this out. Classic copy & paste error.

I updated the code and the article with my originally inteded code.

Cheers!