Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up
for free
なぜ私はPerlでコーディングするのか@吉祥寺.pm16
korenari
November 22, 2018
Programming
0
540
なぜ私はPerlで コーディングするのか@吉祥寺.pm16
吉祥寺.pm16の登壇資料
https://kichijojipm.connpass.com/event/104750/
https://twitter.com/Korenari_D
korenari
November 22, 2018
Tweet
Share
More Decks by korenari
See All by korenari
korenari
0
1.6k
korenari
0
1.4k
Other Decks in Programming
See All in Programming
yattom
32
11k
shun_oshidari
6
2.9k
ykpythemind
0
150
seike460
8
2.2k
bkuhlmann
6
710
kubode
2
200
pco2699
0
100
etagwerker
1
140
zsmb
0
100
bosshawk
1
280
rockname
1
340
thatjeffsmith
0
1.5k
Featured
See All Featured
jakevdp
776
200k
tammielis
237
23k
holman
288
130k
jasonvnalue
81
8.2k
paulrobertlloyd
71
3.7k
afnizarnur
178
14k
scottboms
252
11k
smashingmag
232
18k
dotmariusz
94
5.5k
erikaheidi
15
4.5k
bkeepers
PRO
54
4.3k
moore
125
21k
Transcript
ͳͥࢲ1FSMͰ ίʔσΟϯά͢Δͷ͔ 8 6 . 2 0 1
ࣗݾհ T G . , N F R D LP
LP , , !,PSFOBSJ@%
͜ͷλΠτϧʹ͖͔͚ͨͬ͠ https://twitter.com/black_kaiji/status/1057973231427059714
͜ͷλΠτϧʹ͖͔͚ͨͬ͠ https://twitter.com/black_kaiji/status/1057973231427059714 https://twitter.com/black_kaiji/status/1058712946098892800
ࠓͷαϚϦʔ •ͳͥࢲ1FSMͰίʔσΟϯά͢Δͷ͔
ࠓͷαϚϦʔ •ͳͥࢲ1FSMͰίʔσΟϯά͢Δͷ͔ •͍ •͍͢ •͏·͍
ࠓͷαϚϦʔ •ͳͥࢲ1FSMͰίʔσΟϯά͢Δͷ͔ •͍ ʜʜ Ϩεϙϯεॲཧ͕͍ •͍͢ ʜʜ লϝϞϦ •͏·͍ ʜʜ
ߦͰਖ਼نදݱ͕ॻ͚Δ
ࠓͷαϚϦʔ •ͳͥࢲ1FSMͰίʔσΟϯά͢Δͷ͔ •͍ ʜʜ Ϩεϙϯεॲཧ͕͍ •͍͢ ʜʜ লϝϞϦ •͏·͍ ʜʜ
ߦͰਖ਼نදݱ͕ॻ͚Δ 㲎 ਖ਼نදݱϦςϥϧ͕͋Δʂ
ਖ਼نදݱϦςϥϧʁ •ӈهͷࣈ෦ •1FSMͰએݴ͕ෆཁͰਖ਼ن දݱ͕ར༻Մೳ •෦Ͱྑ͍ײ͡ʹίϯύΠϧ •
$word = ‘kichijoji’; if ($word =~ /^k/) { print ”OK ¥n"; } else { print ”NG ¥n"; }
ਖ਼نදݱϦςϥϧͬͯԿ͕خ͍͠ͷʁ • ਖ਼نදݱϦςϥϧ͕ͳ͍ͱɺਖ਼نදݱΛద༻͢Δ͝ͱʹɺຖ ճਖ਼نදݱΛίϯύΠϧ͢ΔίʔυΛॻ͖͕ͪͰ͢ɻ • ͜Εɺ࣮ߦΛେ෯ʹѱԽͤ͞·͢ɻ • ਖ਼نදݱϦςϥϧ͕͋Εɺਖ਼نදݱΛݴޠॲཧܥଆͰίϯύ Πϧ͍ͯ͠ճ͢͜ͱ͕Ͱ͖ΔͷͰɺ࣮ߦ্͕͠·͢ɻ
http://blog.kazuhooku.com/2013/12/blog-post.html
ࢀߟ ͪΐͬͱલʹʹͳͬͨΒ͍͠ • ਖ਼نදݱ͕ߏจͱͯ͠ඞཁ͔Ͳ͏͔ͱ͍͏͔Β IUUQTUPHFUUFSDPNMJ ʢ݄ʣ • ϓϩάϥϛϯάݴޠʹ͓͚Δਖ਼نදݱϦςϥϧͷඞཁੑʹ͍ͭͯ IUUQCMPHLB[VIPPLVDPNCMPHQPTUIUNM ʢ݄ʣ
• ਖ਼نදݱϦςϥϧຊʹඞཁͳͷ͔ʁ IUUQTXXXTMJEFTIBSFOFULXBUDITT ʢ݄ !1Z$PO+1ʣ
1FSMͱ͍͑ϫϯϥΠφʔ perl -ne 'print if 30 ..
40’ *.txt 3040 perl -pi -e 's/foo/bar/g;’ t1.txt > t2.txt foobar ! perl -ne 'print if /./' t1.txt > t2.txt . $ →" Perl %#
1FSMͱ͍͑ϫϯϥΠφʔ perl -ne 'print if 30 ..
40’ *.txt 3040!# perl -pi -e 's/foo/bar/g;’ t1.txt > t2.txt foobar$) perl -ne 'print if /./' t1.txt > t2.txt . + !# →%!*( ' " TL& m(_ _ )m
ॳΊͯ1FSMͰൃදͰ͖ͨʂʂ