Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
正規表現
Search
Yumeto Inaoka
March 01, 2017
Technology
0
220
正規表現
2017/03/01のB3ゼミで発表
Yumeto Inaoka
March 01, 2017
Tweet
Share
More Decks by Yumeto Inaoka
See All by Yumeto Inaoka
文献紹介: Quantity doesn’t buy quality syntax with neural language models
yumeto
1
200
文献紹介: Open Domain Web Keyphrase Extraction Beyond Language Modeling
yumeto
0
250
文献紹介: Self-Supervised_Neural_Machine_Translation
yumeto
0
170
文献紹介: Comparing and Developing Tools to Measure the Readability of Domain-Specific Texts
yumeto
0
180
文献紹介: PAWS: Paraphrase Adversaries from Word Scrambling
yumeto
0
170
文献紹介: Beyond BLEU: Training Neural Machine Translation with Semantic Similarity
yumeto
0
290
文献紹介: EditNTS: An Neural Programmer-Interpreter Model for Sentence Simplification through Explicit Editing
yumeto
0
360
文献紹介: Decomposable Neural Paraphrase Generation
yumeto
0
240
文献紹介: Analyzing the Limitations of Cross-lingual Word Embedding Mappings
yumeto
0
240
Other Decks in Technology
See All in Technology
[CMU-DB-2025FALL] Apache Fluss - A Streaming Storage for Real-Time Lakehouse
jark
0
110
ガバメントクラウド利用システムのライフサイクルについて
techniczna
0
180
モダンデータスタック (MDS) の話とデータ分析が起こすビジネス変革
sutotakeshi
0
430
エンジニアとPMのドメイン知識の溝をなくす、 AIネイティブな開発プロセス
applism118
4
990
AWSを使う上で最低限知っておきたいセキュリティ研修を社内で実施した話 ~みんなでやるセキュリティ~
maimyyym
2
140
意外とあった SQL Server 関連アップデート + Database Savings Plans
stknohg
PRO
0
290
EM歴1年10ヶ月のぼくがぶち当たった苦悩とこれからへ向けて
maaaato
0
270
eBPFとwaruiBPF
sat
PRO
4
2.5k
寫了幾年 Code,然後呢?軟體工程師必須重新認識的 DevOps
cheng_wei_chen
1
1k
Microsoft Agent 365 を 30 分でなんとなく理解する
skmkzyk
1
1k
regrowth_tokyo_2025_securityagent
hiashisan
0
170
AWS Trainium3 をちょっと身近に感じたい
bigmuramura
1
130
Featured
See All Featured
Optimising Largest Contentful Paint
csswizardry
37
3.5k
Context Engineering - Making Every Token Count
addyosmani
9
490
Six Lessons from altMBA
skipperchong
29
4.1k
The Cost Of JavaScript in 2023
addyosmani
55
9.3k
Making Projects Easy
brettharned
120
6.5k
Facilitating Awesome Meetings
lara
57
6.7k
Code Review Best Practice
trishagee
74
19k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
[SF Ruby Conf 2025] Rails X
palkan
0
490
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
54k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
Transcript
ਖ਼نදݱ #θϛ ࣗવݴޠॲཧݚڀࣨɹҴԬເਓ
ൃද༰ ˗ ਖ਼نදݱͱ ˗ ਖ਼نදݱΛΘͳ͍߹ɾͬͨ߹ ˗ ߏจ ˗ লུɾϝλจࣈ
ਖ਼نදݱͱ ˗ จࣈྻू߹ΛͭͷจࣈྻͰදݱ͢Δํ๏ ˗ ݕࡧͳͲʹར༻͞Ε͍ͯΔ ˗ ଟ͘ͷϓϩάϥϜݴޠͰར༻Մೳ ˗ ݩʑਓݴޠΛද͢खஈͷͭͱͯ͠ಋೖ ˗
ӳޠͩͱ3FHVMBSFYQSFTTJPO ˗ ུͯ͠SF SFHFY SFHFYQ
ਖ਼نදݱΛΘͳ͍߹ ˗ 8JOEPXT8JOEPXTΛݕࡧ os = ["Windows 95", "Windows95", "windows 95",
“windows95”, "Windows 98", "Windows98", "windows 98", “windows98”] print("ok" if s in os else “ng") # Windows95 -> ok # windows 98 -> ok # Windows Me -> ng
ਖ਼نදݱΛͬͨ߹ ˗ 8JOEPXT8JOEPXTΛݕࡧ os = r"[Ww]indows ?9[58]" print("ok" if
re.match(os, s) else “ng") # Windows95 -> ok # windows 98 -> ok # Windows Me -> ng
ਖ਼نදݱΛͬͨ߹ ˗ ܞଳి൪߸Λݕࡧ phone = r"0[789]0-?\d{4}-?\d{4}" print("ok" if re.match(phone,
s) else "ng") # 070-0123-4567 -> ok # 09009876543 -> ok # 06-6012-3456 -> ng
ਖ਼نදݱͷߏจ ˗ ҙͷҰจࣈ ptn = r”r.c.” # rice ->
ok # rich -> ok # rock -> ok # roc -> ng # reach -> ng
ਖ਼نදݱͷߏจ ˗ ಛఆͷҰจࣈ<ʜ> ptn = r”[bdm]ay” # bay ->
ok # day -> ok # may -> ok # way -> ng # say -> ng # pay -> ng
ਖ਼نදݱͷߏจ ˗ จ಄? ptn = r”^re” # reborn ->
ok # revenge -> ok # replay -> ok # preview -> ng # unstable -> ng # alive -> ng
ਖ਼نදݱͷߏจ ˗ จ ptn = r”able$” # movable ->
ok # readable -> ok # able -> ok # stably -> ng # assemble -> ng
ਖ਼نදݱͷߏจ ˗ ճҎ্ͷ܁Γฦ͠ ptn = r”w*” # w
-> ok # ww -> ok # wwww -> ok # -> ok # oh -> ng # yeah -> ng # hey -> ng
ਖ਼نදݱͷߏจ ˗ ճҎ্ͷ܁Γฦ͠ ptn = r”oh+” # oh
-> ok # ohh -> ok # ohhhh -> ok # o -> ng # ok -> ng
ਖ਼نදݱͷߏจ ˗ ճ͔ճ ptn = r”^b?l?ack” # ack
-> ok # lack -> ok # back -> ok # black -> ok # block -> ng # slack -> ng
ਖ਼نදݱͷߏจ ˗ Nճ͔ΒOճ\N O^ ptn = r”^g{2,4}d$” # good
-> ok # goood -> ok # gooood -> ok # gd -> ng # god -> ng # goooood -> ng
লུɾϝλจࣈ ˗ ܻҎ্ͷࣈྻ ptn = r”[0123456789]+”
লུɾϝλจࣈ ˗ ܻҎ্ͷࣈྻ # ptn = r”[0123456789]+” ptn = r”[0-9]+”
লུɾϝλจࣈ ˗ ܻҎ্ͷࣈྻ # ptn = r”[0123456789]+” # ptn =
r”[0-9]+” ptn = r”\d+”
লུɾϝλจࣈ ˗ จࣈҎ্ͷӳখจࣈྻ ptn = r”[abcdefghijklmnopqrstuvwxyz]+”
লུɾϝλจࣈ ˗ จࣈҎ্ͷӳখจࣈྻ # ptn = r”[abcdefghijklmnopqrstuvwxyz]+” ptn = r”[a-z]+”
লུɾϝλจࣈ ˗ ઌ಄͕ӳࣈɺͦΕҎ͕߱ӳࣈຢ@ ptn = r”[a-zA-Z][a-zA-Z_\d]*”
লུɾϝλจࣈ ˗ ઌ಄͕ӳࣈɺͦΕҎ͕߱ӳࣈຢ@ # ptn = r”[a-zA-Z][a-zA-Z_\d]*” ptn = r”[a-zA-Z]\w*”
ਖ਼نදݱͷྫ ˗ 8JOEPXT8JOEPXTΛݕࡧ os = r"[Ww]indows ?9[58]"
ਖ਼نදݱͷྫ ˗ 8JOEPXT8JOEPXTΛݕࡧ os = r"[Ww]indows ?9[58]"
ਖ਼نදݱͷྫ ˗ 8JOEPXT8JOEPXTΛݕࡧ os = r"[Ww]indows ?9[58]"
ਖ਼نදݱͷྫ ˗ 8JOEPXT8JOEPXTΛݕࡧ os = r"[Ww]indows ?9[58]"
ਖ਼نදݱͷྫ ˗ ܞଳి൪߸Λݕࡧ phone = r"0[789]0-?\d{4}-?\d{4}"
ਖ਼نදݱͷྫ ˗ ܞଳి൪߸Λݕࡧ phone = r"0[789]0-?\d{4}-?\d{4}"
ਖ਼نදݱͷྫ ˗ ܞଳి൪߸Λݕࡧ phone = r"0[789]0-?\d{4}-?\d{4}"
ਖ਼نදݱͷྫ ˗ ܞଳి൪߸Λݕࡧ phone = r"0[789]0-?\d{4}-?\d{4}"
ਖ਼نදݱͷྫ ˗ ܞଳి൪߸Λݕࡧ phone = r"0[789]0-?\d{4}-?\d{4}"
ਖ਼نදݱͷྫ ˗ ܞଳి൪߸Λݕࡧ phone = r"0[789]0-?\d{4}-?\d{4}"
ൃදͨ͠༰ ˗ ਖ਼نදݱͱ ˗ ਖ਼نදݱΛΘͳ͍߹ɾͬͨ߹ ˗ ߏจ ˗ লུɾϝλจࣈ