Giter Club home page Giter Club logo

elixir-morph's Introduction

Morph

Lightweight string transformations for Elixir.

Installation

Add morph to your list of dependencies in mix.exs:

  def deps do
    [{:morph, "~> 0.0.1"}]
  end

Overview

Morph can transform strings, atoms, and lists to several formats:

Morph.to_snake "loremIpsumDolor"          # => "lorem_ipsum_dolor"
Morph.to_snake_caps "loremIpsumDolor"     # => 'LOREM_IPSUM_DOLOR'
Morph.to_camel "lorem_ipsum_dolor"        # => 'loremIpsumDolor'
Morph.to_upper_camel "lorem_ipsum_dolor"  # => 'LoremIpsumDolor'
Morph.to_dashed "lorem_ipsum_dolor"       # => 'lorem-ipsum-dolor'
Morph.to_human "lorem_ipsum_dolor"        # => 'Lorem ipsum dolor'
Morph.to_title "lorem_ipsum_dolor"        # => 'Lorem Ipsum Dolor'

Morph.to_snake ["lifeTheUniverse", :andEverything, 42]
# => ["life_the_universe", "and_everything", 42]

Examples

Snake case

Converts a string, atom or list to snake case.

iex> Morph.to_snake "Lorem ipsum dolor"
"lorem_ipsum_dolor"

iex> Morph.to_snake [:loremIpsum, "life-the-universe", "And Everything", 42]
["lorem_ipsum", "life_the_universe", "and_everything", 42]

Caps snake case

Converts a string, atom, or list to upper (screaming) snake case.

iex> Morph.to_snake_caps "Lorem ipsum dolor"
"LOREM_IPSUM_DOLOR"

iex> Morph.to_snake_caps [:loremIpsum, "life-the-universe", "And Everything", 42]
["LOREM_IPSUM", "LIFE_THE_UNIVERSE", "AND_EVERYTHING", 42]

Dashed

Converts a string, atom, or list to dashed format.

iex> Morph.to_dashed "Lorem ipsum dolor"
"lorem-ipsum-dolor"

iex> Morph.to_dashed [:loremIpsum, "life.the.universe", "And Everything", 42]
["lorem-ipsum", "life-the-universe", "and-everything", 42]

Camel

Converts a string, atom, or list to camel case.

iex> Morph.to_camel "Lorem ipsum dolor"
"loremIpsumDolor"

iex> Morph.to_camel [:loremIpsum, "life_the_universe", "And Everything", 42]
["loremIpsum", "lifeTheUniverse", "andEverything", 42]

Upper camel case

Converts a string, atom, or list to upper camel case.

iex> Morph.to_upper_camel "Lorem ipsum dolor"
"LoremIpsumDolor"

iex> Morph.to_upper_camel [:loremIpsum, "life_the_universe", "And Everything", 42]
["LoremIpsum", "LifeTheUniverse", "AndEverything", 42]

Human format

Converts a string, atom or list to human format.

iex> Morph.to_human "Lorem ipsum dolor"
"Lorem ipsum dolor"

iex> Morph.to_human [:loremIpsum, "life_the_universe", "And Everything", 42]
["Lorem ipsum", "Life the universe", "And everything", 42]

Title format

Converts a string, atom, or list to title format

iex> Morph.to_title "Lorem ipsum dolor"
"Lorem Ipsum Dolor"

iex> Morph.to_title [:loremIpsum, "life_the_universe", "And Everything", 42]
["Lorem Ipsum", "Life The Universe", "And Everything", 42]

elixir-morph's People

Contributors

cmoncrief avatar stephenmoloney avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.