<turbo-stream action="append" target="posts_list"><template>    <div class="postbit" id="113065" data-post-id="113065">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="abtrapp" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/abtrapp/120/12228_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  abtrapp
                    <span class="op-star" title="Thread Starter">
                      <img alt="OP" class="op-star-icon" src="/assets/thread-icons/thread-icon-thread-starter-df91e872.png" />
                    </span>
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>I think we’re going off topic… <img src="https://forum.elixirforum.com/images/emoji/apple/slightly_smiling_face.png?v=15" title=":slightly_smiling_face:" class="emoji" alt=":slightly_smiling_face:" loading="lazy" width="20" height="20"> - can we move the latest part of this thread to a new section in this forum?</p>
<p>Sorry, not clear enough here: RoR vs Ecto, for example field/attribute: Elixir/Ecto: DB-migration + schema + n changesets cast + validations vs. Ruby: migration + 1 x security for the assignments (depending on the RoR version), even the validations can be handled automatically from the DB definition. Even with 1 reused changeset a lot of typing the same stuff. And using :string in the schema and :text in the migration isn’t making maintenance easier.</p>
<p>Sorry, wasn’t clear enough about the second point either, I thought more of: <code>[1,3,2].uniq.sort.count</code> vs <code>Enum.count(Enum.sort(Enum.dedup([1, 3, 2])))</code> (and no, <code>[1, 3, 2] |&gt; Enum.dedup() |&gt; Enum.sort() |&gt; Enum.count()</code> does not make it better and yes - I know that you rarely find something like this, mostly in the introduction examples <img src="https://forum.elixirforum.com/images/emoji/apple/laughing.png?v=15" title=":laughing:" class="emoji" alt=":laughing:" loading="lazy" width="20" height="20"> - so the first impression you get from the language is far worse than some “real” code later where you find out about the beauty of pattern matching, …</p>
<p>I know that some of this decisions are made on purpose and some imho make a lot of sense (no automatic preloading, …), but in some other places the implizit/explizit mixing in Phoenix puzzles me too. controller → view directory name = convention over configuration → template name = configuration over convention… things like this let me put Elixir always somewhere between RoR (everything = convention) and old school Java stuff (everything was configured) - I’m just glad that the template name is not defined in an XML file <img src="https://forum.elixirforum.com/images/emoji/apple/smirk.png?v=15" title=":smirk:" class="emoji" alt=":smirk:" loading="lazy" width="20" height="20"> - for me it would be a lot easier if I know the idea behind such decisions (like the original question with UTF8). I don’t want to learn what is convention and what not, I want to understand why a decision has been made.</p>
<p>Will definitively <em>not</em> argue about conciseness, clarity, expressiveness, resilience, fault-tolerance and quoted expressions <img src="https://forum.elixirforum.com/images/emoji/apple/rofl.png?v=15" title=":rofl:" class="emoji" alt=":rofl:" loading="lazy" width="20" height="20"> - at least not against Elixir in this areas…</p>
<p>I hope (and I’m confident) that the community here will stay like it is now: very friendly &amp; helpful and I hope that Phoenix and Ecto will continue to improve (and hopefully 3rd party libraries will follow, really miss some basic stuff - but on the other hand you learn more about ltree in postgres and other things when you have to solve such things by yourself).</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="113065" data-batch-url="/posts/batch_likers">
                        2
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/regular-expressions-in-elixir-with-unicode-characters/18048/22">Post #21</a>
	                </div>
	            </div>
              <div id="likers-container-113065" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="113065"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #21"></div>
  </section>
</div>
    <div class="postbit" id="113067" data-post-id="113067">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="abtrapp" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/abtrapp/120/12228_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  abtrapp
                    <span class="op-star" title="Thread Starter">
                      <img alt="OP" class="op-star-icon" src="/assets/thread-icons/thread-icon-thread-starter-df91e872.png" />
                    </span>
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>Exactly! That was the point of this discussion. Everything is UTF-8, everybody uses UTF-8, why the default behavior is Latin. To understand the “wrong” result you have to dig into Erlang. And the fear that I have is that the people here are building a really awesome language but have some legacy decisions that make it unnecessary hard for newbies to jump on that train.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="113067" data-batch-url="/posts/batch_likers">
                        0
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/regular-expressions-in-elixir-with-unicode-characters/18048/23">Post #22</a>
	                </div>
	            </div>
              <div id="likers-container-113067" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="113067"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #22"></div>
  </section>
</div>
    <div class="postbit" id="113128" data-post-id="113128">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="OvermindDL1" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/OvermindDL1/120/2677_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  OvermindDL1
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<aside class="quote no-group" data-username="abtrapp" data-post="22" data-topic="18048">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/abtrapp/48/12228_2.png" class="avatar"> abtrapp:</div>
<blockquote>
<p>Sorry, wasn’t clear enough about the second point either, I thought more of: <code>[1,3,2].uniq.sort.count</code> vs <code>Enum.count(Enum.sort(Enum.dedup([1, 3, 2])))</code> (and no, <code>[1, 3, 2] |&gt; Enum.dedup() |&gt; Enum.sort() |&gt; Enum.count()</code> does not make it better and yes - I know that you rarely find something like this, mostly in the introduction examples <img src="https://forum.elixirforum.com/images/emoji/apple/laughing.png?v=15" title=":laughing:" class="emoji" alt=":laughing:" loading="lazy" width="20" height="20"> - so the first impression you get from the language is far worse than some “real” code later where you find out about the beauty of pattern matching, …</p>
</blockquote>
</aside>
<pre data-code-wrap="elixir"><code class="lang-elixir">iex(1)&gt; import Enum
Enum
iex(2)&gt; [1,3,2]|&gt;uniq|&gt;sort|&gt;count
3
</code></pre>
<p>^.^</p>
<p>I personally find that whole dotted style hard to read though, like it’s a singular value not ‘calling’ something (that’s just weird, like in ruby how do you differentiate between a.b.c.d where b, c, and d are value accesses on a record or function calls, that’s very confusing, I don’t see how someone can find that clear…  But then again I find Elixir’s dotted access confusing too, like is a.c calling a function <code>c</code> on whatever atom/module that <code>a</code> points to or is it doing a struct access, like what on earth there… ^.^;), so I’d usually do:</p>
<pre data-code-wrap="elixir"><code class="lang-elixir">[1, 3, 2]
|&gt; Enum.dedup()
|&gt; Enum.sort()
|&gt; Enum.count()
</code></pre>
<p>As it’s obvious that each line has a singular operation on the previous result, simple and clear and unambiguous.  <img src="https://forum.elixirforum.com/images/emoji/apple/slight_smile.png?v=15" title=":slight_smile:" class="emoji" alt=":slight_smile:" loading="lazy" width="20" height="20"></p>
<p>Though I find OCaml’s syntax even far more readable:</p>
<pre data-code-wrap="ocaml"><code class="lang-ocaml">(* Module access, in Elixir this is List.flatten([[1], [2]]) with same result*)
List.flatten([[1]; [2]])

(* Module access via passed in binding 'm', in Elixir this is `m.flatten([[1], [2]]) *)
(* As OCaml is strongly typed I need to define what interface has to be fullfilled of what is passed in, so... *)
module type Flattenable = sig val flatten : 'a list list -&gt; 'a list end
(* Then use it like this *)
module Blah = (val m : Flattenable) (* give it a temporary scoped name of the defined interface *)
Blah.flatten([[1]; [2]]) (* Then call it, notice this is still the same syntax as a module call even though the module is unknown, it could be List or something else *)

(* Struct access, in Elixir this is s.field *)
s.field (* Lower case start, modules are upper-case start *)

(* Row-typed structure, this is like a map-with-atom-keys usage in Elixir, in Elixir it is m.a *)
m#a (* These forums need a language syntax adjustment, this is so wrong...  ^.^;

(* In OCaml maps are a library, not a built-in type like with Elixir, example usage *)
module StringMap = Map.Make(String)
let m = StringMap.(
  empty
  |&gt; add "hello", 1
  |&gt; add "world", 2
)
(* The `Module.(...)` is like a scoped import, you could just as well have done `open Module` instead to open it in the outer scope instead *)
(* The Elixir version of the above would be:
m = (
  import Map
  %{}
  |&gt; put("hello", 1)
  |&gt; put("world", 2)
)
*)

(* And of the above elixir piped example of manipulating a list, in OCaml: *)
(* Notice how `;` is a list separator, a `,` is a tuple separator, you can even tell what things are that way *)
[1; 3; 2]
|&gt; List.sort_uniq compare
|&gt; List.length

(* Or if you want to locally open `List`: *)
List.(
  [1; 3; 2]
  |&gt; sort_uniq compare
  |&gt; length
</code></pre>
<p>The big thing is that everything is unambiguous, you know what something is and what it can be from how it is used, and it is fully type safe the whole way through.  <img src="https://forum.elixirforum.com/images/emoji/apple/slight_smile.png?v=15" title=":slight_smile:" class="emoji" alt=":slight_smile:" loading="lazy" width="20" height="20"><br>
That style is not very conducive to hot-code-swapping though, but it sets of modules with dyn-typed integration points were swapped atomically then it would work fine.  <img src="https://forum.elixirforum.com/images/emoji/apple/slight_smile.png?v=15" title=":slight_smile:" class="emoji" alt=":slight_smile:" loading="lazy" width="20" height="20"></p>
<aside class="quote no-group" data-username="abtrapp" data-post="22" data-topic="18048">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/abtrapp/48/12228_2.png" class="avatar"> abtrapp:</div>
<blockquote>
<p>(no automatic preloading, …</p>
</blockquote>
</aside>
<p>Hmm?  What do you mean?  If by preloading you mean loading all modules at load-time, that happens in a release (or if you set a flag in mix otherwise, which you shouldn’t need to do).</p>
<aside class="quote no-group quote-modified" data-username="abtrapp" data-post="22" data-topic="18048">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/abtrapp/48/12228_2.png" class="avatar"> abtrapp:</div>
<blockquote>
<p>controller -&gt; view directory name</p>
</blockquote>
</aside>
<p>Yeah I would prefer that to be defined on the <code>use ...</code> line personally too.</p>
<aside class="quote no-group" data-username="abtrapp" data-post="23" data-topic="18048" data-full="true">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/abtrapp/48/12228_2.png" class="avatar"> abtrapp:</div>
<blockquote>
<p>Exactly! That was the point of this discussion. Everything is UTF-8, everybody uses UTF-8, why the default behavior is Latin. To understand the “wrong” result you have to dig into Erlang. And the fear that I have is that the people here are building a really awesome language but have some legacy decisions that make it unnecessary hard for newbies to jump on that train.</p>
</blockquote>
</aside>
<p>It would break backwards compat (the regex exists since ‘before’ binaries had direct utf8 matching support), in addition looking up in a Unicode table is <em>MUCH</em> slower than an ASCII table, so it is good to make that cost explicit.  <img src="https://forum.elixirforum.com/images/emoji/apple/slight_smile.png?v=15" title=":slight_smile:" class="emoji" alt=":slight_smile:" loading="lazy" width="20" height="20"></p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="113128" data-batch-url="/posts/batch_likers">
                        1
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/regular-expressions-in-elixir-with-unicode-characters/18048/24">Post #23</a>
	                </div>
	            </div>
              <div id="likers-container-113128" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="113128"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #23"></div>
  </section>
</div>
    <div class="postbit" id="113149" data-post-id="113149">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="abtrapp" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/abtrapp/120/12228_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  abtrapp
                    <span class="op-star" title="Thread Starter">
                      <img alt="OP" class="op-star-icon" src="/assets/thread-icons/thread-icon-thread-starter-df91e872.png" />
                    </span>
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>Oh, I just wrote everything in 1 line to compare them, that’s not the code I normally write <img src="https://forum.elixirforum.com/images/emoji/apple/smiley.png?v=15" title=":smiley:" class="emoji" alt=":smiley:" loading="lazy" width="20" height="20"></p>
<p>automatic association preloading in ActiveRecord / explicit in Ecto → that’s definitively a good decision <img src="https://forum.elixirforum.com/images/emoji/apple/slight_smile.png?v=15" title=":slight_smile:" class="emoji" alt=":slight_smile:" loading="lazy" width="20" height="20"></p>
<p>backwards compatibility - my biggest fear as said. In a few years you have a bunch of garbage that nobody can understand and that does not make any sense. And my 2 cents regarding performance: you can make 4.345 / 2.0 = 2 with integer handling faster than floats. Wrong, but faster. Or concatenate Strings by ignoring the second one. Wrong but very fast. If you want to use “slow” concatenation use a _real suffix. That’s imho the wrong way: look how fast Elixir is (in the few cases that are not used at all, and in the majority of the cases you have to write additional code because of backward compatibility). Sometimes you have to make cuts. Can hurt but from 3 decades of experience in languages, frameworks and hardware I can say: if you don’t do it it will hurt even more.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="113149" data-batch-url="/posts/batch_likers">
                        1
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/regular-expressions-in-elixir-with-unicode-characters/18048/25">Post #24</a>
	                </div>
	            </div>
              <div id="likers-container-113149" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="113149"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #24"></div>
  </section>
</div>
    <div class="postbit" id="113157" data-post-id="113157">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="OvermindDL1" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/OvermindDL1/120/2677_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  OvermindDL1
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<aside class="quote no-group" data-username="abtrapp" data-post="25" data-topic="18048">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/abtrapp/48/12228_2.png" class="avatar"> abtrapp:</div>
<blockquote>
<p>backwards compatibility - my biggest fear as said. In a few years you have a bunch of garbage that nobody can understand and that does not make any sense. And my 2 cents regarding performance: you can make 4.345 / 2.0 = 2 with integer handling faster than floats. Wrong, but faster. Or concatenate Strings by ignoring the second one. Wrong but very fast. If you want to use “slow” concatenation use a _real suffix. That’s imho the wrong way: look how fast Elixir is (in the few cases that are not used at all, and in the majority of the cases you have to write additional code because of backward compatibility). Sometimes you have to make cuts. Can hurt but from 3 decades of experience in languages, frameworks and hardware I can say: if you don’t do it it will hurt even more.</p>
</blockquote>
</aside>
<p>Just as a note, you can trivially make you own <code>sigil_r</code> function to replace the built-in one that defaults to unicode, just use/import it into your module.  ^.^</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="113157" data-batch-url="/posts/batch_likers">
                        2
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/regular-expressions-in-elixir-with-unicode-characters/18048/26">Post #25</a>
	                </div>
	            </div>
              <div id="likers-container-113157" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="113157"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #25"></div>
  </section>
</div>
    <div class="postbit" id="113230" data-post-id="113230">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="abtrapp" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/abtrapp/120/12228_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  abtrapp
                    <span class="op-star" title="Thread Starter">
                      <img alt="OP" class="op-star-icon" src="/assets/thread-icons/thread-icon-thread-starter-df91e872.png" />
                    </span>
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>Thanks for the great hint! For all new to Elixir who don’t want to wait if/until this will change and found this page via google… the link to the excellent Elixir documentation about custom sigils: <a href="https://elixir-lang.org/getting-started/sigils.html#custom-sigils" rel="nofollow">https://elixir-lang.org/getting-started/sigils.html#custom-sigils</a></p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="113230" data-batch-url="/posts/batch_likers">
                        2
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/regular-expressions-in-elixir-with-unicode-characters/18048/27">Post #26</a>
	                </div>
	            </div>
              <div id="likers-container-113230" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="113230"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #26"></div>
  </section>
</div>
    <div class="postbit" id="119348" data-post-id="119348">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="chriseyre" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/chriseyre/120/11497_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  chriseyre
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>Here is some upcoming documentation on using character classes in Elixir regex:</p>
<p><a href="https://hexdocs.pm/elixir/master/Regex.html#module-character-classes" class="onebox" target="_blank" rel="noopener nofollow ugc">https://hexdocs.pm/elixir/master/Regex.html#module-character-classes</a></p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="119348" data-batch-url="/posts/batch_likers">
                        2
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/regular-expressions-in-elixir-with-unicode-characters/18048/28">Post #27</a>
	                </div>
	            </div>
              <div id="likers-container-119348" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="119348"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #27"></div>
  </section>
</div>
    <div class="postbit" id="119372" data-post-id="119372">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="kip" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/kip/120/1440_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  kip
                  </h3>
		          </div>
						
			          <div class="user-title">
									<span>ex_cldr Core Team</span>
			          </div>
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>Thats a great contribution, thanks!</p>
<p>Would you think it appropriate to also mention that it supports Unicode category notation?  Like</p>
<pre data-code-wrap="elixir"><code class="lang-elixir">iex&gt; Regex.match? ~r/\p{Lu}\p{Ll}+/, "José"
true
</code></pre>
<p>And Unicode Block notation too:</p>
<pre data-code-wrap="elixir"><code class="lang-elixir">iex&gt; Regex.match? ~r/\p{Latin}+/, "José"
true
iex&gt; Regex.match? ~r/\p{Hiragana}+/, "José"
false
iex&gt; Regex.match? ~r/\p{Cherokee}+/, "José"
false
</code></pre> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="119372" data-batch-url="/posts/batch_likers">
                        3
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/regular-expressions-in-elixir-with-unicode-characters/18048/29">Post #28</a>
	                </div>
	            </div>
              <div id="likers-container-119372" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="119372"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-last-post cat-last-post" title="Last post!"></div>
  </section>
</div>
</template></turbo-stream><turbo-stream action="replace" target="load-more-container"><template><div id="load-more-container" class="load-more-container">
    <span class="all-loaded">— All posts loaded —</span>
</div></template></turbo-stream>