# Pattern matching in multi level nested maps

**URL:** <https://forum.elixirforum.com/t/pattern-matching-in-multi-level-nested-maps/32793>\
**Category:** Questions\
**Tags:** pattern-matching, maps, learning-elixir, nested\
**Created:** [July 2, 2020, 12:53pm UTC](https://forum.elixirforum.com/t/pattern-matching-in-multi-level-nested-maps/32793 "2020-07-02T12:53:34Z")\
**Posts on this page:** 1\
**Showing post:** 3

<div class="post-metadata">

**Author:** ![tushar](https://forum.elixirforum.com/letter_avatar_proxy/v4/letter/t/5fc32e/32.png) [@tushar](https://forum.elixirforum.com/u/tushar)\
**Post date:** [July 2, 2020, 1:12pm UTC](https://forum.elixirforum.com/t/pattern-matching-in-multi-level-nested-maps/32793/3 "2020-07-02T13:12:48Z")

</div>

Extremely sorry for the typo , if I extend to below

```elixir
mymap = %{a: "xxx" , b: %{k1: "k1" , k2: "k2" , c: %{k3: "k3", k4: "k4"}, d: %{k5: "k5", k6: "k6"}}}

Here "b" has multiple sub maps within it , the below pattern match fails ,

%{a: v1, b: %{k1: v2, k2: v3, c: %{k3: v4, k4: v4}, d: %{k5: v5, k6: v6}}} = mymap 
** (MatchError) no match of right hand side value: %{a: "xxx", b: %{c: %{k3: "k3", k4: "k4"}, d: %{k5: "k5", k6: "k6"}, k1: "k1", k2: "k2"}}
    (stdlib) erl_eval.erl:453: :erl_eval.expr/5
    (iex) lib/iex/evaluator.ex:257: IEx.Evaluator.handle_eval/5
    (iex) lib/iex/evaluator.ex:237: IEx.Evaluator.do_eval/3
    (iex) lib/iex/evaluator.ex:215: IEx.Evaluator.eval/3
    (iex) lib/iex/evaluator.ex:103: IEx.Evaluator.loop/1
    (iex) lib/iex/evaluator.ex:27: IEx.Evaluator.init/4

```

How do I pattern match if there are multiple sub maps within a map ?

---

_[View the full topic](https://forum.elixirforum.com/t/pattern-matching-in-multi-level-nested-maps/32793)._
