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
たのしいString
Search
ima1zumi
February 25, 2023
1
440
たのしいString
ima1zumi
February 25, 2023
Tweet
Share
More Decks by ima1zumi
See All by ima1zumi
Reline 1分 Cooking
ima1zumi
0
4
続・mruby/cにUTF-8 を実装する
ima1zumi
0
3
UTF-8 is coming to mruby/c
ima1zumi
3
4.4k
Watchから始めるOSS生活
ima1zumi
0
45
String meets Encoding
ima1zumi
2
2.4k
Emojiの正規表現
ima1zumi
0
3
RubyKaigiで話した話
ima1zumi
1
340
漢字が文字コードになる前の話
ima1zumi
0
3
Dive into Encoding
ima1zumi
4
2.1k
Featured
See All Featured
Writing Fast Ruby
sferik
621
60k
Designing with Data
zakiwarfel
96
4.8k
Six Lessons from altMBA
skipperchong
21
3k
How GitHub Uses GitHub to Build GitHub
holman
468
290k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
221
21k
VelocityConf: Rendering Performance Case Studies
addyosmani
320
23k
Why Our Code Smells
bkeepers
PRO
331
56k
The Invisible Customer
myddelton
114
12k
The Art of Programming - Codeland 2020
erikaheidi
42
12k
What's in a price? How to price your products and services
michaelherold
237
11k
What’s in a name? Adding method to the madness
productmarketing
PRO
16
2.6k
Designing for humans not robots
tammielis
248
25k
Transcript
ͨͷ͍͠String ϓϩάϥϛϯάݴޠRuby30पه೦Πϕϯτ 2023-02-25 ima1zumi
Introduction - @ima1zumi (Mari Imaizumi) - ӬγεςϜϚωδϝϯτॴଐ - IRB and
Reline committer - จࣈͱจࣈίʔυ͕͖
Powered by
Ruby30प͓ΊͰͱ͏͍͟͝·͢🎉
Rubyͷָ͍͠ͱ͜Ζ
String & Encoding
ࠓ͔Β͑Δ จࣈͱจࣈίʔυૢ࡞ 3બ
ᶃ ɺόΠτྻ͔Βจࣈʹ͢
ɺόΠτྻ͔Βจࣈʹ͢ • Integer#chr • Array#pack • String#force_encoding
Integer#chr(encoding) • ίʔυϙΠϯτΛจࣈͱͯ͠ղऍ • Ҿͳ͠ͷ߹US-ASCIIɺASCII-8BITɺEncoding.default_internalͷ ॱͰղऍ
Array#pack • ྻͷ༰ΛҾʹैͬͯύοΫ • "U*" Unicode codepointΛUTF-8ͱͯ͠ղऍͯ͠ฦ͢
String#force_encoding • จࣈίʔυͷΈΛมߋ͠ɺόΠτྻมߋ͠ͳ͍ • ͜͜ͰόΠφϦ(ASCII_8BIT)ͷจࣈίʔυΛUTF-8ʹมߋ
ᶄจࣈԽ͚Λ࡞Δ
จࣈԽ͚Λ࡞Δ • String#force_encoding • String#encode
จࣈԽ͚Λ࡞Δ
จࣈԽ͚Λ࡞Δ
จࣈԽ͚Λ࡞Δ
https://github.com/integrations/slack/issues/1416
ããã«ã¡ã¯ä¸ç ͜Μʹͪੈք
None
None
None
None
None
ããã«ã¡ã¯ä¸ç ͜Μʹͪੈք
ᶅจࣈίʔυΛRubyͰRubyʹՃ
จࣈίʔυΛՃ͢Δ • Encoding#replicate • ҙޙड़
Δ͜ͱ • 1. ࡞Γ͍ͨEncodingͷܗʹͳΔEncodingΛܾΊΔ • 2. Encoding#replicate͢Δ • 3. มϩδοΫΛॻ͘
จࣈίʔυΛఆٛ͢Δ
มϩδοΫΛॻ͘
https://github.com/ima1zumi/ruby_encoding_iroha
Remove Encoding#replicate Ruby 3.3
None
None
Welcome to faster Encodings