Book Image

Elixir Cookbook

By : Paulo Pereira
Book Image

Elixir Cookbook

By: Paulo Pereira

Overview of this book

Table of Contents (16 chapters)
Elixir Cookbook
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Slicing strings with ranges


In the Splitting strings recipe, we saw how to use a token (by default, a whitespace) to split a string and get a list of strings delimited by that token. What if we wish to get only a portion of the original string?

Getting ready

We will use IEx. Start it by entering iex in the command line.

How to do it…

To slice a string using a range, follow these steps:

  1. Define a string:

    iex(1)> my_string = "The quick brown fox jumps over the lazy dog"
    "The quick brown fox jumps over the lazy dog"
    
  2. Define two ranges:

    iex(2)> my_range_one = 10..14
    10..14
    iex(3)> my_range_two = -27..-25
    -27..-25
    
  3. Use the String.slice/2 function to slice the original string using my_range_one:

    iex(4)> String.slice(my_string, my_range_one)
    "brown"
    
  4. Use the String.slice/2 function to slice the original string using my_range_two:

    iex(4)> String.slice(my_string, my_range_two)
    "fox"
    

How it works…

The String.slice/2 function uses a range to determine the start position of the split and the number...