View source code
Display the source code in std/string.d from which this page was generated on github.
Report a bug
If you spot a problem with this page, click here to create a Bugzilla issue.
Improve this page
Quickly fork, edit online, and submit a pull request for this page. Requires a signed-in GitHub account. This works well for small changes. If you'd like to make larger changes you may want to consider using local clone.

Function std.string.detab

Replace each tab character in s with the number of spaces necessary to align the following character at the next tab stop.

auto auto detab(Range) (
  auto ref Range s,
  size_t tabSize = 8
) pure
if (isForwardRange!Range && isSomeChar!(ElementEncodingType!Range) || __traits(compiles, StringTypeOf!Range));

Parameters

NameDescription
s string
tabSize distance between tab stops

Returns

GC allocated string with tabs replaced with spaces

Example

writeln(detab(" \n\tx", 9)); // " \n         x"

Authors

Walter Bright, Andrei Alexandrescu, Jonathan M Davis, and David L. 'SpottedTiger' Davis

License

Boost License 1.0.