Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
楽しい文字コード入門 知っておきたいUnicode Emoji編
Search
Shunsuke Tadokoro
September 29, 2016
Programming
2.8k
14
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
楽しい文字コード入門 知っておきたいUnicode Emoji編
Bizreach Tech Beer Bashでの発表資料です
Shunsuke Tadokoro
September 29, 2016
More Decks by Shunsuke Tadokoro
See All by Shunsuke Tadokoro
ある日「Webエンジニアなら、Webサーバーは作れますよね」と言われたら? ~ 3つのJVM言語で作って学ぶ
todokr
2
590
Onboarding Process for Scala Team
todokr
0
2k
Running Scala on AWS Lambda in a Snappy Way
todokr
7
4.7k
Scalaでつくる ちょっとしたCLIツール
todokr
0
1.1k
新しいプログラミング言語の学び方 HTTPサーバーを作って学ぶ Java, Scala, Clojure
todokr
28
20k
わかる!Java to Clojure
todokr
6
1.9k
Scala絵文字ライブラリに Macroなどを導入してみた
todokr
0
1.5k
Clojureに入門してHTTPサーバーをつくってみた話
todokr
3
1.1k
emojiconに行ってきました
todokr
2
830
Other Decks in Programming
See All in Programming
The NotImplementedError Problem in Ruby
koic
1
670
Vite+ Unified Toolchain for the Web
naokihaba
0
220
Agentic UI
manfredsteyer
PRO
0
120
作って学ぶ、 JSX (TSX) ランタイムの基本
syumai
7
1.6k
PHPで使える日時の表現と、その知り方 #frontend_phpcon_do
o0h
PRO
0
230
Spring Security 実践 ─ GraphQL APIで実務に役立つ 認証・認可 を学ぶ
wagyu
0
210
「エンジニアインターン、どうやって取った?」準備のリアルを語るLT会 Progate BAR
akiomatic
0
130
セキュリティの専門家じゃなくてもできる。「セキュリティ意識」をアップデートして サプライチェーン攻撃への耐性を高めよう。
tk3fftk
5
690
A2UI という光を覗いてみる
satohjohn
1
120
AIエージェントの隔離技術の徹底比較
kawayu
0
470
Old Dog, New Tricks: The Java 25 Reinvention - JNation
bazlur_rahman
0
150
JJUG CCC 2026 Spring: JSpecify で実現する Kotlin フレンドリーな Java API 設計
ternbusty
1
160
Featured
See All Featured
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.7k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
250
We Are The Robots
honzajavorek
0
240
New Earth Scene 8
popppiees
3
2.3k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.8k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.5k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
201
75k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.2k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
200
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.3k
Designing Experiences People Love
moore
143
24k
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.7k
Transcript
CUCC ฏੜ·Εͷ จࣈίʔυೖ #J[SFBDI5FDI#FFS#BTI !UPEPLS ͓͖͍ͬͯͨ 6OJDPEF&NPKJฤ ָ͍͠ʂ
CUCC
CUCC ୭ͩ
CUCC ాॴ ॣ༎ !UPEPLS ⦁גࣜձࣾϏζϦʔν ελϯόΠࣄۀ෦ αʔνίΞάϧʔϓ ⦁৽ถ4DBMBΤϯδχΞ ⦁8FCΫϩʔϥʔͷ։ൃɾӡ༻ ⦁݄ೖࣾ
৽ଔ ⦁ฏੜ·Ε ࡀ
CUCC ͓͢͠Δ͜ͱ • จࣈίʔυʁ • 6OJDPEF&NPKJͱͦͷྺ࢙ • ࡢࠓͷ&NPKJࣄ • ϓϩάϥϜ͔Βѻ͏
CUCC αʔνίΞάϧʔϓ ٻਓαΠτΫϩʔϥʔͷ։ൃͱӡ༻ ΫϩʔϦϯάͱจࣈίʔυ Ϋϩʔϥʔ ٻਓαΠτ ٻ৬ऀ ΫϩʔϦϯά ΠϯσΩγϯά ٻਓݕࡧ
CUCC Ṗͷ63-Τϯίʔυࣄ݅ • ҬີணܕͷΞϧόΠτٻਓαΠτ • αΠτΛΫϩʔϦϯάதɺ ಥΫϩʔϥʔ͕ྫ֎Λు͍ͯࢮ • αΠτͷϨεϙϯεϔομΛ֬ೝ Content-Type:text/html;
charset=%E6%96%87%E5%AD%97%E3%82%B3%E3%83%BC%E3%83%89
CUCC Ṗͷ63-Τϯίʔυࣄ݅ • ҬີணܕͷΞϧόΠτٻਓαΠτ • αΠτΛΫϩʔϦϯάதɺ ಥΫϩʔϥʔ͕ྫ֎Λు͍ͯࢮ • αΠτͷϨεϙϯεϔομΛ֬ೝ Content-Type:text/html;
charset=%E6%96%87%E5%AD%97%E3%82%B3%E3%83%BC%E3%83%89
CUCC Ṗͷ63-Τϯίʔυࣄ݅ • ҬີணܕͷΞϧόΠτٻਓαΠτ • αΠτΛΫϩʔϦϯάதɺ ಥΫϩʔϥʔ͕ྫ֎Λు͍ͯࢮ • αΠτͷϨεϙϯεϔομΛ֬ೝ Content-Type:text/html;
charset=%E6%96%87%E5%AD%97%E3%82%B3%E3%83%BC%E3%83%89 ʊਓਓਓਓਓʊ ʼ ո͍͠ ʻ ʉ:?:?:?:ʉ
CUCC Ṗͷ63-Τϯίʔυࣄ݅ Content-Type:text/html; charset=%E6%96%87%E5%AD%97%E3%82%B3%E3%83%BC%E3%83%89 ڪΔڪΔ63-σίʔυ DIBSTFUจࣈίʔυ
CUCC Ṗͷ63-Τϯίʔυࣄ݅ Content-Type:text/html; charset=%E6%96%87%E5%AD%97%E3%82%B3%E3%83%BC%E3%83%89 ڪΔڪΔ63-σίʔυ DIBSTFUจࣈίʔυ
CUCC Ṗͷ63-Τϯίʔυࣄ݅ Content-Type:text/html; charset=%E6%96%87%E5%AD%97%E3%82%B3%E3%83%BC%E3%83%89 ʊਓਓਓਓਓਓਓʊ ʼ จࣈίʔυ ʻ ʉ:?:?:?:?:ʉ ڪΔڪΔ63-σίʔυ
DIBSTFUจࣈίʔυ
CUCC ͦͷଞʹ • ᶃ᷂ͳͲͷจࣈԽ͚ରࡦ • จࣈίʔυࣗಈผ ˠdϲ݄ؒɺจࣈίʔυͱ֨ಆ
CUCC จࣈίʔυ
CUCC จࣈίʔυʁ ʮจࣈίʔυʯ͕ԿΛࢦ͔͢จ຺ʹΑΔͨΊɺ ਖ਼͍͠ཧղͷͨΊʹԼهͷͭΛ۠ผ͢Δඞཁ͕͋Δɻ • ූ߸Խจࣈू߹ $PEFE$IBSBDUFS4FUʢ$$4ʣ "4$** +*49 6OJDPEF
FUD • จࣈූ߸Խํࣜ $IBSBDUFS&ODPEJOH4DIFNFʢ$&4ʣ 4IJGU@+*4 &6$+1 65' FUD
CUCC จࣈίʔυʁ ʮจࣈίʔυʯ͕ԿΛࢦ͔͢จ຺ʹΑΔͨΊɺ ਖ਼͍͠ཧղͷͨΊʹԼهͷͭΛ۠ผ͢Δඞཁ͕͋Δɻ • ූ߸Խจࣈू߹ $PEFE$IBSBDUFS4FUʢ$$4ʣ "4$** +*49 6OJDPEF
FUD • จࣈූ߸Խํࣜ $IBSBDUFS&ODPEJOH4DIFNFʢ$&4ʣ 4IJGU@+*4 &6$+1 65' FUD
CUCC จࣈίʔυʁ ʮจࣈίʔυʯ͕ԿΛࢦ͔͢จ຺ʹΑΔͨΊɺ ਖ਼͍͠ཧղͷͨΊʹԼهͷͭΛ۠ผ͢Δඞཁ͕͋Δɻ • ූ߸Խจࣈू߹ $PEFE$IBSBDUFS4FUʢ$$4ʣ "4$** +*49 6OJDPEF
FUD • จࣈූ߸Խํࣜ $IBSBDUFS&ODPEJOH4DIFNFʢ$&4ʣ 4IJGU@+*4 &6$+1 65' FUD
CUCC ৄ͘͠ IUUQTTQFBLFSEFDLDPNUPEPLSKJTLBSBQPSVXFO[JLPEPSVNFO
CUCC 6OJDPEF&NPKJͱͦͷྺ࢙
CUCC
CUCC
CUCC
CUCC
CUCC ถ ߹ऺࠃ ݄ Ұൠڭॻԋઆ ࠃͷݱঢ়ʹ͍ͭͯͷେ౷ྖͷݟղΛड़ɺओཁͳ࣏՝Λઆ໌͢Δԋઆ IUUQTVQMPBEXJLJNFEJBPSHXJLJQFEJBDPNNPOTDDG1SFTJEFOU@0CBNB@EFMJWFST@UIF@4UBUF@PG@UIF@6OJPO@BEESFTT@+BO@ @KQH
CUCC IUUQTXXXUIFHVBSEJBODPNVTOFXTOHJOUFSBDUJWFKBOTQTUBUFPGUIFVOJPOBEESFTTPCBNBFNPKJ ߹ऺࠃएऀ͚ʹશจΛ༁
CUCC IUUQTXXXUIFHVBSEJBODPNVTOFXTOHJOUFSBDUJWFKBOTQTUBUFPGUIFVOJPOBEESFTTPCBNBFNPKJ
CUCC 5IBOLZPV (PECMFTTZPV (PECMFTTUIJTDPVOUSZXFMPWF "QQMBVTF ͋Γ͕ͱ͏ɺօ͞Μʹਆͷ͝Ճޢ͕͋Γ·͢Α͏ʹɺ զʑ͕Ѫ͢Δ͜ͷࠃʹਆͷ͝Ճޢ͕͋Γ·͢Α͏ʹɻ ʢେͳഥखʣ IUUQTXXXUIFHVBSEJBODPNVTOFXTOHJOUFSBDUJWFKBOTQTUBUFPGUIFVOJPOBEESFTTPCBNBFNPKJ
CUCC ӳ ΦοΫεϑΥʔυࣙॻ ͷʮ8PSEPGUIF:FBSʯ
CUCC ӳ ΦοΫεϑΥʔυࣙॻ ͷʮ8PSEPGUIF:FBSʯ IUUQCMPHPYGPSEEJDUJPOBSJFTDPNXPSEPGUIFZFBSFNPKJ
CUCC ӳ ΦοΫεϑΥʔυࣙॻ ͷʮ8PSEPGUIF:FBSʯ IUUQMELKFTIUUPETWLXQFOHJOFOFUEOBDEODPNXQDPOUFOUVQMPBETFNPKJGSFRVFODZQOH
CUCC ӳ ΦοΫεϑΥʔυࣙॻ ͷʮ8PSEPGUIF:FBSʯ IUUQMELKFTIUUPETWLXQFOHJOFOFUEOBDEODPNXQDPOUFOUVQMPBETFNPKJGSFRVFODZQOH ΈΜͳ&NPKJେ͖
CUCC IUUQXXXFNPKJUSBDLFSDPN
CUCC 6OJDPEF&NPKJ • 6OJDPEFʢ݄ʣʹॳऩ • ʮέʔλΠֆจࣈʯͷ૬ޓӡ༻ੑ֬อ͕త • ༷653ʹ
CUCC &NPKJऩ·Ͱͷឯ༨ۂં ݄͔Βཌ݄ʹ͔͚ͯ 6OJDPEFͷϝʔϦϯάϦετͰܹ͕ຄൃ
CUCC &NPKJऩ·Ͱͷឯ༨ۂં ݄͔Βཌ݄ʹ͔͚ͯ 6OJDPEFͷϝʔϦϯάϦετͰܹ͕ຄൃ
CUCC 3JDL.D(PXBO 6OJDPEFίϯιʔγΞϜઃ͔࣌Βͷϝϯόʔɻ࣌ͷઐݹจࣈͷऩू IUUQTHSPVQTHPPHMFDPNGPSVNNTHFNPKJVOJDPEFO:QXB-5UHLO/RQX+L:9P+
CUCC 3JDL.D(PXBO 6OJDPEFίϯιʔγΞϜઃ͔࣌Βͷϝϯόʔɻ࣌ͷઐݹจࣈͷऩू IUUQTHSPVQTHPPHMFDPNGPSVNNTHFNPKJVOJDPEFO:QXB-5UHLO/RQX+L:9P+
CUCC &NPKJͳΜͯͷΞϗ͍͘͞ྲྀߦͩͱࢥ͏ɻ 6OJDPEFʹؚΊΔͷ͕ྑ͍ͱࢥΘͳ͍ɻ 3JDL.D(PXBO 6OJDPEFίϯιʔγΞϜઃ͔࣌Βͷϝϯόʔɻ࣌ͷઐݹจࣈͷऩू IUUQTHSPVQTHPPHMFDPNGPSVNNTHFNPKJVOJDPEFO:QXB-5UHLO/RQX+L:9P+
CUCC &NPKJͳΜͯͷΞϗ͍͘͞ྲྀߦͩͱࢥ͏ɻ 6OJDPEFʹؚΊΔͷ͕ྑ͍ͱࢥΘͳ͍ɻ 3JDL.D(PXBO 6OJDPEFίϯιʔγΞϜઃ͔࣌Βͷϝϯόʔɻ࣌ͷઐݹจࣈͷऩू .BSL%BWJT 6OJDPEFίϯιʔγΞϜཧࣄʹͯ͠&NPKJऩͷఏҊऀ IUUQTHSPVQTHPPHMFDPNGPSVNNTHFNPKJVOJDPEFO:QXB-5UHLO/RQX+L:9P+
CUCC &NPKJͳΜͯͷΞϗ͍͘͞ྲྀߦͩͱࢥ͏ɻ 6OJDPEFʹؚΊΔͷ͕ྑ͍ͱࢥΘͳ͍ɻ 3JDL.D(PXBO 6OJDPEFίϯιʔγΞϜઃ͔࣌Βͷϝϯόʔɻ࣌ͷઐݹจࣈͷऩू .BSL%BWJT 6OJDPEFίϯιʔγΞϜཧࣄʹͯ͠&NPKJऩͷఏҊऀ զʑԿճٞͨ͠͡Όͳ͍͔ɻ ͯ͞ډΓΛ͍ͯͨ͠ͳ IUUQTHSPVQTHPPHMFDPNGPSVNNTHFNPKJVOJDPEFO:QXB-5UHLO/RQX+L:9P+
CUCC &NPKJͳΜͯͷΞϗ͍͘͞ྲྀߦͩͱࢥ͏ɻ 6OJDPEFʹؚΊΔͷ͕ྑ͍ͱࢥΘͳ͍ɻ 3JDL.D(PXBO 6OJDPEFίϯιʔγΞϜઃ͔࣌Βͷϝϯόʔɻ࣌ͷઐݹจࣈͷऩू ݹจࣈΑΓधཁ͕͋Δɻ զʑԿճٞͨ͠͡Όͳ͍͔ɻ ͯ͞ډΓΛ͍ͯͨ͠ͳ IUUQTHSPVQTHPPHMFDPNGPSVNNTHFNPKJVOJDPEFO:QXB-5UHLO/RQX+L:9P+ .BSL%BWJT
6OJDPEFίϯιʔγΞϜཧࣄʹͯ͠&NPKJऩͷఏҊऀ
CUCC ͦͷଞʹ • ʮֆจࣈͷొɺύϯυϥͷശΛ։͚Δ͜ͱʹͳΔʯ • ʮ͖ΘΊͯڧ͘ຊͷจԽʹґଘ͓ͯ͠ΓɺຊਓҎ֎ʹ ཧղ͕͍͠ʯ • ʮ&NPKJจষྗ͕ශऑͰ ײΛจࣈͰදݱͰ͖ͳ͍ਓͷͨΊͷͷͩʯ
CUCC ͦͷଞʹ • ʮֆจࣈͷొɺύϯυϥͷശΛ։͚Δ͜ͱʹͳΔʯ • ʮ͖ΘΊͯڧ͘ຊͷจԽʹґଘ͓ͯ͠ΓɺຊਓҎ֎ʹ ཧղ͕͍͠ʯ • ʮ&NPKJจষྗ͕ශऑͰ ײΛจࣈͰදݱͰ͖ͳ͍ਓͷͨΊͷͷͩʯ
CUCC ͦͷଞʹ • ʮֆจࣈͷొɺύϯυϥͷശΛ։͚Δ͜ͱʹͳΔʯ • ʮ͖ΘΊͯڧ͘ຊͷจԽʹґଘ͓ͯ͠ΓɺຊਓҎ֎ʹ ཧղ͕͍͠ʯ • ʮ&NPKJจষྗ͕ශऑͰ ײΛจࣈͰදݱͰ͖ͳ͍ਓͷͨΊͷͷͩʯ
CUCC ͦͷଞʹ • ʮֆจࣈͷొɺύϯυϥͷശΛ։͚Δ͜ͱʹͳΔʯ • ʮ͖ΘΊͯڧ͘ຊͷจԽʹґଘ͓ͯ͠ΓɺຊਓҎ֎ʹ ཧղ͕͍͠ʯ • ʮ&NPKJจষྗ͕ශऑͰ ײΛจࣈͰදݱͰ͖ͳ͍ਓͷͨΊͷͷͩʯ
CUCC ͦͷଞʹ • ʮֆจࣈͷొɺύϯυϥͷശΛ։͚Δ͜ͱʹͳΔʯ • ʮ͖ΘΊͯڧ͘ຊͷจԽʹґଘ͓ͯ͠ΓɺຊਓҎ֎ʹ ཧղ͕͍͠ʯ • ʮ&NPKJจষྗ͕ශऑͰ ײΛจࣈͰදݱͰ͖ͳ͍ਓͷͨΊͷͷͩʯ
CUCC ࡢࠓͷ&NPKJࣄ
CUCC ࡢࠓͷ&NPKJࣄ • &NPKJ.PEJGJFST • ;8+4FRVFODF
CUCC ʮͳΜͰࠇਓͷ&NPKJ͕ͳ͍ͷ ʯ ͖͔͚ͬϚΠϦʔɾαΠϥεͷπΠʔτ ͱݴΘΕ͍ͯΔ
CUCC U+1F3FE
CUCC U+1F3FE
CUCC U+1F3FE
CUCC &NPKJ.PEJGJFST • ͷ6OJDPEFͰՃ • ίʔυϙΠϯτ6 ''#d6 ''' IUUQVOJDPEFPSHSFQPSUTUS&
[email protected]
@5BCMF
CUCC
CUCC
CUCC
CUCC
CUCC 6 %;&308*%5)+0*/&3 • ;8+;FSP8JEUI+PJOFS • ίʔυϙΠϯτ6 % • จࣈಉ࢜Λ͚ͬͭ͘ΔʮணࡎʯͷΑ͏ͳͷ
IUUQTXXXZPVUVCFDPNXBUDI WPO[%5Q3KLYT
CUCC ;8+4FRVFODFT IUUQXXXVOJDPEFPSHFNPKJDIBSUTFNPKJ[XKTFRVFODFTIUNM
CUCC ;8+4FRVFODFT IUUQXXXVOJDPEFPSHFNPKJDIBSUTFNPKJ[XKTFRVFODFTIUNM
CUCC ;8+4FRVFODFT ;&308*%5)+0*/&3 IUUQXXXVOJDPEFPSHFNPKJDIBSUTFNPKJ[XKTFRVFODFTIUNM
CUCC ;8+4FRVFODFT OFVUSBMͳGBNJMZ
CUCC ;8+4FRVFODFT
CUCC ;8+4FRVFODFT
CUCC ;8+4FRVFODFT
CUCC ;8+4FRVFODFT 6 %;&308*%5)+0*/&3
CUCC ;8+4FRVFODFT 6 '."/
CUCC ;8+4FRVFODFT 6 '80."/
CUCC ;8+4FRVFODFT 6 '#0:
CUCC ϓϩάϥϜ͔Βѻ͏
CUCC 6OJDPEFͷߏ ۠ɺɺ໘ɺ܈͔ΒͳΔ࣍ݩߏ IUUQTXXXXPSH*OUFSOBUJPOBMBSUJDMFTEFGJOJUJPOTDIBSBDUFST
CUCC &NPKJͱαϩήʔτϖΞ • 6OJDPEF&NPKJ#.1ʹؚ·Εͳ͍ • ֦ுྖҬΛදݱ͢ΔͨΊʹαϩήʔτϖΞΛ༻ ˠ ѻ͍͕໘ʂ
CUCC &NPKJΛ͍͍ײ͡ʹѻ͏ϥΠϒϥϦ • KTFNPKJ +BWB4DSJQU • FNPKJKBWB +BWB
CUCC KTFNPKJ • ͳͲͷΤΠϦΞεΛ6OJDPEFίʔυϙΠϯτʹม • ϒϥβ͕ରԠ͍ͯ͠ͳ͍߹$44CBDLHSPVOEJNBHFͰସ
CUCC KTFNPKJ • ͳͲͷΤΠϦΞεΛ6OJDPEFίʔυϙΠϯτʹม • ϒϥβ͕ରԠ͍ͯ͠ͳ͍߹$44CBDLHSPVOEJNBHFͰସ
CUCC ΤΠϦΞε ˠ &NPKJ var converter = new EmojiConverter(); var
str = "Hello:grinning:, Emoji World :wink:"; var result = converter.replace_colons(str); Console.log(result); // "Hello , Emoji World "
CUCC FNPKJKBWB • ΤΠϦΞεͱ&NPKJͷ૬ޓม͕Մೳ • &NPKJఆϑΟϧλϦϯάɺ )5.-͚ΤϯςΟςΟࢀরʹม͢ΔػೳͳͲఏڙ
CUCC FNPKJKBWB • ΤΠϦΞεͱ&NPKJͷ૬ޓม͕Մೳ • &NPKJఆϑΟϧλϦϯάɺ )5.-͚ΤϯςΟςΟࢀরʹม͢ΔػೳͳͲఏڙ
CUCC FNPKJKBWB • ΤΠϦΞεͱ&NPKJͷ૬ޓม͕Մೳ • &NPKJఆϑΟϧλϦϯάɺ )5.-͚ΤϯςΟςΟࢀরʹม͢ΔػೳͳͲఏڙ
CUCC ΤΠϦΞε ˠ &NPKJ String str = "Hello:grinning:, Emoji World
:wink:"; String result = EmojiParser.parseToUnicode(str); System.out.println(result); // "Hello , Emoji World "
CUCC ͓·͚&NPKJΛͬ͞ͱೖྗ .BDͳΒ $USM $PNNBOE εϖʔε
CUCC )BWFB(PPE&NPKJ-JGF