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
正規表現#TechLunch
Search
Livesense Inc.
PRO
April 21, 2014
Technology
0
47
正規表現#TechLunch
正規表現
2013/04/16 (水) 12:00-13:00 @ Livesense TechLunch
発表者:松坂 高嗣
Livesense Inc.
PRO
April 21, 2014
Tweet
Share
More Decks by Livesense Inc.
See All by Livesense Inc.
27新卒_Webエンジニア職採用_会社説明資料
livesense
PRO
0
2.4k
株式会社リブセンス・転職会議 採用候補者様向け資料
livesense
PRO
0
51
株式会社リブセンス 会社説明資料(報道関係者様向け)
livesense
PRO
0
1.5k
データ基盤の負債解消のためのリプレイス
livesense
PRO
0
440
26新卒_総合職採用_会社説明資料
livesense
PRO
0
11k
株式会社リブセンス会社紹介資料 / Invent the next common.
livesense
PRO
1
37k
26新卒_Webエンジニア職採用_会社説明資料
livesense
PRO
1
13k
中途セールス職_会社説明資料
livesense
PRO
0
260
EM候補者向け転職会議説明資料
livesense
PRO
0
130
Other Decks in Technology
See All in Technology
大「個人開発サービス」時代に僕たちはどう生きるか
sotarok
20
9.7k
品質視点から考える組織デザイン/Organizational Design from Quality
mii3king
0
190
テストを軸にした生き残り術
kworkdev
PRO
0
190
シークレット管理だけじゃない!HashiCorp Vault でデータ暗号化をしよう / Beyond Secret Management! Let's Encrypt Data with HashiCorp Vault
nnstt1
3
230
フィンテック養成勉強会#56
finengine
0
140
ハードウェアとソフトウェアをつなぐ全てを内製している企業の E2E テストの作り方 / How to create E2E tests for a company that builds everything connecting hardware and software in-house
bitkey
PRO
1
120
Kiroと学ぶコンテキストエンジニアリング
oikon48
6
9.8k
なぜSaaSがMCPサーバーをサービス提供するのか?
sansantech
PRO
8
2.7k
AWSを利用する上で知っておきたい名前解決のはなし(10分版)
nagisa53
10
3k
落ちる 落ちるよ サーバーは落ちる
suehiromasatoshi
0
150
ZOZOマッチのアーキテクチャと技術構成
zozotech
PRO
3
1.4k
5分でカオスエンジニアリングを分かった気になろう
pandayumi
0
200
Featured
See All Featured
How STYLIGHT went responsive
nonsquared
100
5.8k
Faster Mobile Websites
deanohume
309
31k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
61k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.6k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3k
A Modern Web Designer's Workflow
chriscoyier
696
190k
Building a Modern Day E-commerce SEO Strategy
aleyda
43
7.6k
Reflections from 52 weeks, 52 projects
jeffersonlam
352
21k
A designer walks into a library…
pauljervisheath
207
24k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
51
5.6k
Transcript
ਖ਼نදݱ 5BLBTIJ.BUTVTBLB
ࢲਖ਼نදݱ͕͖Ͱ͢ w ʮᩦཉͳڧཉͳʯͳͲͱ͍͏ܗ༰ࢺΛৗతʹ ͏ͷਖ਼نදݱΛॻ͍ͯΔ࣌͘Β͍Ͱ͢
˒˒ˑ w ຊਖ਼نදݱॳ৺ऀ͚ʹ w ਖ਼نදݱͷ"#$Λ w ͓͠Α͏ͱࢥͬͨͷͰ͕͢
͋Δͷ͜ͱ w "͞Μʮਖ਼نදݱͷൃදฉ͖͍ͨͰ͢ʯ w দࡔʮ͋ʔɺඇΤϯδχΞ͚Ͱ͍͜͏ͱࢥͬͯΔ ͷͰɺৄ͘͠ৄઆਖ਼نදݱͱ͍͏͍͍ຊ͕͋Δ͔ ΒͦΕΛʯ w "͞Μʮ͋ɺͦΕϑΫϩ͞ΜͷຊͰ͔͢ɻ࣋ͬͯ ·͢ʯ
w দࡔʮʯ
ଟগํసͯ͠
ਖ਼نදݱͷؾ࣋ͪʹ ͳͬͯߟ͑Δ
ͱ͍͏͜ͱΛ ͓͠·͢
˒˒˒
جૅࣝ
ਖ਼نදݱ w 3FHVMBS&YQSFTTJPO w 3FHFY'F%FYͬΆ͘ൃԻ͢Δͷ͕Α͍ w Ε͐ͬ͘͢͡
ਖ਼نදݱ ෳͷදݱΛਖ਼نԽͨ͠ͷ
Ͳ͏͍͏ͷʁ w ʮBCDʯͱʮBCʯΛද͍ͨ͠߹ w BC Dc w ʮʯʮʯʮʯΛද͢߹ w
cc ʮ¥d+ʯաͩΑɺͱ͍͏Λ͢Δ͖ͩΖ͏͕Ͳ͜Ͱ͢Δ͖͔ɻ
Մೳੑͷۭؒ BCD BC ਖ਼نදݱBC͕ ද͠ಘΔۭؒ BC BCDE BDE ௨ৗͷݕࡧͷ߹ͱू߹ͱ෦ू߹͕ٯͱͳΔɻ
දݱ͍ͨ͠ର㱠දݱ w ਖ਼نදݱʮ͋ΔՄೳੑͷۭؒʯΛද͢ه๏ w ਖ਼نදݱΛॻ͘͜ͱ͕తͰ͋Δ͜ͱͳ͍ w ྺ࢙తʹจ๏Λදݱ͢ΔͨΊͷه๏ͱͯ͠࡞ ΒΕ͕ͨɺࠓͰύλʔϯϚον༻ͷϝλݴޠ ͷ͜ͱΛࢦ͢͜ͱ͕ଟ͍ BNFόοΧεφΞه๏ɻ
ੜࣗ༝จ๏ͱ͔νϣϜεΩʔ֊ͱ͔ͦ͏͍͏എܠʹ৮ΕΔ͖͔ʁ
ి൪߸ͷنଇ w #/' w 5&-/6.44&1/6.44&1/6.4 w /6.4&.15:c/6./6.4 w /6.ccccccccc w
4&1&.15:c w ਖ਼نදݱ w =E\^ =E\^ =E\^ #/'͋Μ·Γ֮͑ͯͳ ͍ͷͰ͚ͬ͜͏ద ಉ͡දݱΛ͢Δͷʹਖ਼نදݱγϯϓϧͩΑͶͱɻ
ΘΕํ w ͨͱ͑େྔͷ$47͔ΒϝʔϧΞυϨεΛൈ͖ ग़ͨ͠Γ w ి൪߸ͬΆ͍ͷΛݟ͚ͨΓ w 63-ͷύλʔϯΛมͨ͠Γ w ࢯͶͱ͔'
,ͱ͔ΞΧϯจࣈྻΛʮѪͯ͠Δʯ ʹஔͨ͠Γ ͍͍ͩͨݕࡧͱஔͩΑͱ
جຊϧʔϧ
ه๏؆୯Ͱ͢ w ී௨ͷจࣈͦͷจࣈͦͷͷΛද͢ w શͯͷจࣈͷՄೳੑ͕͋Δ w ྔࢦఆࢠͰɺલͷύλʔϯΛ܁Γฦ͢ճΛࢦఆ͢Δ w
͔ w ·͍ͨͬͺ͍ w ·͍ͨͬͺ͍ w ʢʣͰάϧʔϐϯά͢Δ͜ͱ͕Ͱ͖Δ ͍ͪΖʔ͞Μ͋ͨΓ͔Β“|” ͱ͔ {n,m} ͱ͔ ^,$ͱ͔ͦ͜ΒลʹಥͬࠐΈ͕ೖΔͱ͏Ε͍͕ͨ͠ͿΜೖΒͳ͍ɻ
؆୯؆୯
ਖ਼نදݱͷ ؾ࣋ͪ
ʜʁ
+BWBͷؾ࣋ͪʹͳΔ 㲈+BWB7.ͷؾ࣋ͪʹͳΔ
ਖ਼نදݱͷؾ࣋ͪʹͳΔ 㲈ਖ਼نදݱղऍܥͷؾ࣋ͪʹ ͳΔ
ਓίʔυΛ௨ͯ͠ػցͱ ͓͢Δ দӬ JVM લా ਖ਼نදݱ Τϯδϯ ਖ਼نදݱ Javaͷίʔυ
ίʔυΛݟͯͯμϝͩ ػցͷؾ࣋ͪʹͳΖ͏
ͱ͜ΖͰ
ਖ਼نදݱ ҰछͷΦʔτϚτϯͱͯ͠ ίϯύΠϧ͞ΕΔ
/'"ͱ%'" w /'" w ඇܾఆੑ༗ݶΦʔτϚτϯ w %'" w ܾఆੑ༗ݶΦʔτϚτϯ ΦʔτϚτϯͱͳΜͧతͳ͓͠Ζ͘ͳ͍ͷͰ͠ͳ͍ɻ
ͱΓ͋͑ͣঢ়ଶΛ࣋ͬͯͯͦΕ͕ೖྗʹԠͯ͡มΘΔͷΑͶతͳײ͡Ͱɻ
ਖ਼نදݱͷؾ࣋ͪʹͳΔ ਖ਼نදݱղऍܥͷؾ࣋ͪʹͳΔ ΦʔτϚτϯͷؾ࣋ͪʹͳΔ
ͳͬͯΈͨ
ΦʔτϚτϯͷͭΓʹͳͬͯ ਖ਼نදݱΛಡΈऔΔ
BC EF DIBS B DIBS C DIBS B
DIBS C HSPVQ lEFz DIBS B DIBS C RVFTUJPO HSPVQ lEFz ී௨ͷจࣈ ʮจࣈΛද͢ਖ਼نදݱʯͱͯ͠ॲཧ͢Δ ׅހʮάϧʔϓʯͱͯ͠ ׅހͷதͷจࣈྻΛͯ͠࠶ؼతʹॲཧ͢Δ ྔࢦఆࢠલͷύλʔϯΛ แઁ͢Δύλʔϯͱͯ͠ॲཧ͢Δ
͜ΕʹΑͬͯ ʮਖ਼نදݱʯͦͷͷ͕ ߏங͞ΕΔ
࡞ͬͯΈͨ
pythonͩΑ
ਖ਼نදݱ͕ݕࡧ͚ͩͷ༻ ్ͩͱ୭͕ܾΊͨͷ͔ TODO:࣋ͬͯߦ͖ํ
ਖ਼نදݱ͔ΒจࣈྻΛੜ ͍͍ͨͬͯ͠͡Όͳ͍
·ͱΊ
ਖ਼نදݱͷؾ࣋ͪΛཧղ͢Ε Α͍ਖ਼نදݱ͕ॻ͚Δ ʮܨ͕ͬͯͳ͍͡ΌΜʯͱ͍͏ಥͬࠐΈ৺ೖΔͣɻ
ϧʔϧͰʮcʯʢબʣͱ͔ \ ^Έ͍ͨͳྔࢦఆࢠɺ લํࢀরΛল͍ͨͷ ࣮͕͔͔ͬͨ͠ΒͰ͢ ͢Έ·ͤΜ Φν2
͝ਗ਼ௌ͋Γ͕ͱ͏͟͝ ͍·ͨ͠
ͱ͍͏͜ͱͰ Կ͔࣭ʁ