Submit Search
Upload
正規表現を覚えよう(初級編)
•
4 likes
•
2,463 views
Kazuo Suzuki
Follow
正規表現の魅力に気づいていない人向け。問題は、魅力に気づいていない人はこのスライドを見ようと思わないと言う事。
Read less
Read more
Technology
Report
Share
Report
Share
1 of 58
Download now
Download to read offline
Recommended
正規表現を覚えよう(中級編)
正規表現を覚えよう(中級編)
Kazuo Suzuki
書こう!正規表現 vol.2 文字クラス(例外)
書こう!正規表現 vol.2 文字クラス(例外)
Takaaki Hirano
書こう!正規表現 vol.2 文字クラス(基本)
書こう!正規表現 vol.2 文字クラス(基本)
Takaaki Hirano
書こう!正規表現 vol.3 ()
書こう!正規表現 vol.3 ()
Takaaki Hirano
arkaのparser(JOI2014ss)
arkaのparser(JOI2014ss)
chatsftd
小林敏:ルビの配置方法 1 2_2
小林敏:ルビの配置方法 1 2_2
Japan Electronic Publishing Association
黒い目の大きな女の子:構文から意味へ
黒い目の大きな女の子:構文から意味へ
Hiroshi Nakagawa
正規表現
正規表現
Takashi Masuda
Recommended
正規表現を覚えよう(中級編)
正規表現を覚えよう(中級編)
Kazuo Suzuki
書こう!正規表現 vol.2 文字クラス(例外)
書こう!正規表現 vol.2 文字クラス(例外)
Takaaki Hirano
書こう!正規表現 vol.2 文字クラス(基本)
書こう!正規表現 vol.2 文字クラス(基本)
Takaaki Hirano
書こう!正規表現 vol.3 ()
書こう!正規表現 vol.3 ()
Takaaki Hirano
arkaのparser(JOI2014ss)
arkaのparser(JOI2014ss)
chatsftd
小林敏:ルビの配置方法 1 2_2
小林敏:ルビの配置方法 1 2_2
Japan Electronic Publishing Association
黒い目の大きな女の子:構文から意味へ
黒い目の大きな女の子:構文から意味へ
Hiroshi Nakagawa
正規表現
正規表現
Takashi Masuda
コプト・エジプト語の他動詞の「前名詞形」の軽動詞性と文法化[The "Prenominal" Form of Verbs in Coptic Egypti...
コプト・エジプト語の他動詞の「前名詞形」の軽動詞性と文法化[The "Prenominal" Form of Verbs in Coptic Egypti...
So Miyagawa
はじめての生成文法 《後編》
はじめての生成文法 《後編》
Shuyo Nakatani
文献紹介:格フレームの対応付けに基づく用言の言い換え
文献紹介:格フレームの対応付けに基づく用言の言い換え
Tomoyuki Kajiwara
Using ~たから and つもり
Using ~たから and つもり
さすてなライフクラブ Sustena Life Club
【一級】対義語類義語1
【一級】対義語類義語1
hagunnzyou
Nl220 Pitman-Yor Hidden Semi Markov Model
Nl220 Pitman-Yor Hidden Semi Markov Model
Kei Uchiumi
Lebesgue 可測性に関する Solovay-Shelah の結果に必要な記述集合論のごく基本的な事項
Lebesgue 可測性に関する Solovay-Shelah の結果に必要な記述集合論のごく基本的な事項
Hiromi Ishii
吉田プロジェクト2019_人工知能のプロセス
吉田プロジェクト2019_人工知能のプロセス
Whiramine
読解支援7 10
読解支援7 10
kentshioda
スペル修正プログラムの作り方 #pronama
スペル修正プログラムの作り方 #pronama
Hiroyoshi Komatsu
学位論文の書き方メモ (Tips for writing thesis)
学位論文の書き方メモ (Tips for writing thesis)
Nobuyuki Umetani
スタート形態素解析
スタート形態素解析
tod esking
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
Toru Tamaki
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
atsushi061452
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
Toru Tamaki
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
CRI Japan, Inc.
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Hiroshi Tomioka
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
Hiroshi Tomioka
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NTT DATA Technology & Innovation
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
CRI Japan, Inc.
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
More Related Content
What's hot
コプト・エジプト語の他動詞の「前名詞形」の軽動詞性と文法化[The "Prenominal" Form of Verbs in Coptic Egypti...
コプト・エジプト語の他動詞の「前名詞形」の軽動詞性と文法化[The "Prenominal" Form of Verbs in Coptic Egypti...
So Miyagawa
はじめての生成文法 《後編》
はじめての生成文法 《後編》
Shuyo Nakatani
文献紹介:格フレームの対応付けに基づく用言の言い換え
文献紹介:格フレームの対応付けに基づく用言の言い換え
Tomoyuki Kajiwara
Using ~たから and つもり
Using ~たから and つもり
さすてなライフクラブ Sustena Life Club
【一級】対義語類義語1
【一級】対義語類義語1
hagunnzyou
Nl220 Pitman-Yor Hidden Semi Markov Model
Nl220 Pitman-Yor Hidden Semi Markov Model
Kei Uchiumi
Lebesgue 可測性に関する Solovay-Shelah の結果に必要な記述集合論のごく基本的な事項
Lebesgue 可測性に関する Solovay-Shelah の結果に必要な記述集合論のごく基本的な事項
Hiromi Ishii
吉田プロジェクト2019_人工知能のプロセス
吉田プロジェクト2019_人工知能のプロセス
Whiramine
読解支援7 10
読解支援7 10
kentshioda
スペル修正プログラムの作り方 #pronama
スペル修正プログラムの作り方 #pronama
Hiroyoshi Komatsu
学位論文の書き方メモ (Tips for writing thesis)
学位論文の書き方メモ (Tips for writing thesis)
Nobuyuki Umetani
スタート形態素解析
スタート形態素解析
tod esking
What's hot
(12)
コプト・エジプト語の他動詞の「前名詞形」の軽動詞性と文法化[The "Prenominal" Form of Verbs in Coptic Egypti...
コプト・エジプト語の他動詞の「前名詞形」の軽動詞性と文法化[The "Prenominal" Form of Verbs in Coptic Egypti...
はじめての生成文法 《後編》
はじめての生成文法 《後編》
文献紹介:格フレームの対応付けに基づく用言の言い換え
文献紹介:格フレームの対応付けに基づく用言の言い換え
Using ~たから and つもり
Using ~たから and つもり
【一級】対義語類義語1
【一級】対義語類義語1
Nl220 Pitman-Yor Hidden Semi Markov Model
Nl220 Pitman-Yor Hidden Semi Markov Model
Lebesgue 可測性に関する Solovay-Shelah の結果に必要な記述集合論のごく基本的な事項
Lebesgue 可測性に関する Solovay-Shelah の結果に必要な記述集合論のごく基本的な事項
吉田プロジェクト2019_人工知能のプロセス
吉田プロジェクト2019_人工知能のプロセス
読解支援7 10
読解支援7 10
スペル修正プログラムの作り方 #pronama
スペル修正プログラムの作り方 #pronama
学位論文の書き方メモ (Tips for writing thesis)
学位論文の書き方メモ (Tips for writing thesis)
スタート形態素解析
スタート形態素解析
Recently uploaded
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
Toru Tamaki
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
atsushi061452
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
Toru Tamaki
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
CRI Japan, Inc.
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Hiroshi Tomioka
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
Hiroshi Tomioka
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NTT DATA Technology & Innovation
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
CRI Japan, Inc.
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
Recently uploaded
(11)
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
正規表現を覚えよう(初級編)
1.
正規表現を覚えよう (初級編) アークシステム株式会社 鈴⽊ 一生
2.
正規表現を覚えよう 2 正規表現とは ⽂字列の集合を一つの⽂字列で表現する方法の一つ (Wikipdiaより)
3.
正規表現を覚えよう 3 なんのこっちゃ?
4.
正規表現を覚えよう 4 正規表現とは 「メタ⽂字」と呼ばれる特殊⽂字と ⽂字列の組み合わせで複数の⽂字列を表現し、 検索やgrepの機能を強⼒にする
5.
正規表現を覚えよう 5 ・・まだ、よくわかんね。
6.
正規表現を覚えよう 6 例えば・・・ 半角スペースやら、タブ⽂字やらが混在している名前リスト はっきり言って、イラっとします。
7.
正規表現を覚えよう 7 例えば・・・ このリストを「[␣□¥t]+」 →
「¥t」で置換します ※␣ :半角スペース、□全角スペース
8.
正規表現を覚えよう 8 例えば・・・ ほら、この通り。スッキリしました。
9.
正規表現を覚えよう 9 あいまい検索でよくね?
10.
正規表現を覚えよう 10 正規表現なら・・・ もっと複雑な表現ができます。そう、正規表現ならね。 例えば・・・ america、America、AMERICA、アメリカ を一度に検索する
11.
正規表現を覚えよう 11 正規表現なら・・・ 検索⽂字列:[Aa](merica|MERICA)|アメリカ ほらね。
12.
正規表現を覚えよう 12 別々に検索すればいいじゃん。
13.
正規表現を覚えよう 13 じゃぁ、これは? さっきのから、アメリカン、Americanを除いて検索。
14.
正規表現を覚えよう 14 除いて検索?できんの?
15.
正規表現を覚えよう 15 正規表現なら・・・ 検索⽂字列:[Aa](merica|MERICA)(?![Nn])|アメリカ(?!ン) どうです? すごさがわかってきましたか? でも、これは まだまだ序の口です。
16.
正規表現を覚えよう 16 正規表現は 正規表現⾃体は、⽂字列を表現する⼿法に過ぎませんが、 その利⽤法はかなり広いです。 私は主に、 ⽂字列検索 置換による機械的な⽂字列加⼯ データ解析や加⼯ プログラムの⼊⼒チェックの実装 などに使⽤しています。
17.
正規表現を覚えよう 17 検索や加⼯はわかるが、 解析やら⼊⼒チェックって?
18.
正規表現を覚えよう 18 正規表現なら・・・ ある特定の⽂字列が含まれているか、いないかを元に そのデータが正当かどうかをチェックする事ができます。 例えば・・ 郵便番号の⼊⼒チェックとして、 以下のような要件があるとします。 3桁-4桁の数字で構成される 区切り⽂字は「-」のみ
19.
正規表現を覚えよう 19 正規表現で⼊⼒チェック テストデータはこんな感じ これを正規表現でチェックするには・・・
20.
正規表現を覚えよう 20 正規表現で⼊⼒チェック 検索⽂字列:^¥d{3}-¥d{4}$ この正規表現に マッチするか否かで、 ⼊⼒チェックや データのチェックを⾏う事ができます。
21.
正規表現を覚えよう 21 正規表現で⼊⼒チェック 通常のプログラムだと、100stepくらいの実装が 正規表現を使えば1stepで可能だったりします。 (ただし、正規表現を知らない人にはメンテできなくなりますが・・) 他にもデータ加⼯なんかは、 ⾺⿅正直にやると2時間くらいかかる単純作業が 1分でできてしまったりもします。
22.
正規表現を覚えよう 22 覚えたくなってきたでしょ? 正規表現は、非常に便利なんですが、 表現⾃体が暗号のようで分かりにくいのと、 有効性の説明が難しいため、 日本ではあまり浸透していません。 逆に言うと、これを知っていると 非常に強⼒な武器になります。 また一度覚えると、⼿放せなくなるほど便利です。 是非、覚えましょう。
23.
正規表現を覚えよう 23 簡単なメタ⽂字 では最初に「メタ⽂字」から。 メタ⽂字は「特殊な意味を持つ⽂字」と言う意味です。 有名なものに ¥n 改⾏ ¥t
タブ⽂字 が、あります。 中には、これを知っているだけで 「正規表現を知っている」と言う輩がおりますが、 そう言う人を⾒かけたら、⿐で笑ってあげてください。
24.
正規表現を覚えよう 24 「¥n」改⾏ 例)検索⽂字列:です¥n 「です」で終わる⾏を検索します。 厳密には「〜ですの後ろに改⾏がある」場所を検索します。
25.
正規表現を覚えよう 25 検索結果 「です」が⾏末でない場合、ヒットしなくなります。
26.
正規表現を覚えよう 26 「¥t」タブ⽂字 例)検索⽂字列:¥t 「タブ⽂字」を検索します。
27.
正規表現を覚えよう 27 代表的なメタ⽂字 次に、代表的なメタ⽂字です。 ^ ⾏頭 $
⾏末 . 何でもいいから1⽂字 + 直前の⽂字を1個以上繰り返す * 直前の⽂字を0個以上繰り返す ? 直前の⽂字がある、またはない(ものぐさ検索) ¥ エスケープシーケンス {n,m} 繰り返し回数指定 だんだん、暗号っぽくなってきましたが、 ひとつずつ、解説していきましょう。
28.
正規表現を覚えよう 28 「^」⾏頭 例)検索⽂字列:^私は 「私は」で始まる⾏を検索します。
29.
正規表現を覚えよう 29 検索結果 「私は」が⾏頭にない場合、ヒットしなくなります。 「^」⾃体は⽂字を現すのではなく、場所を表す事になります。
30.
正規表現を覚えよう 30 「$」⾏末 例)検索⽂字列:です$ 「です」で終わる⾏を検索します。
31.
正規表現を覚えよう 31 検索結果 「〜です」が⾏末でない場合、ヒットしなくなります。 「¥n」との違いは「改⾏⽂字を含むか含まないか」です。
32.
正規表現を覚えよう 32 便利な使い方 その1 あるファイルの空⾏を削除したい。 無駄な空⾏がジャマなので、削除したいと思ったとき、 あなたならどうしますか?
33.
正規表現を覚えよう 33 便利な使い方 その1 検索⽂字列:^¥n
置換⽂字列: で、置換すると・・・ ほら、この通り。 何⾏あっても一瞬です。 この時、「^¥n」でなく 「^$」で置換すると、 改⾏⽂字が消えないため、 空⾏はなくなりません。
34.
正規表現を覚えよう 34 「.」とにかく、何でもいいから1⽂字 例)検索⽂字列:私は.です 「私は○です」と言う⽂字列を検索します。
35.
正規表現を覚えよう 35 検索結果 「アレ」「ママ」「パパ」は1⽂字でないのでヒットしません。 「アレ」も含めるのであれば、次のメタ⽂字を使います。
36.
正規表現を覚えよう 36 「+」直前の⽂字を1個以上繰り返す 例)検索⽂字列:私は.+です 「私は〜です」と言う⽂字列を検索します。
37.
正規表現を覚えよう 37 検索結果 検索⽂字を「私はマ+です」とすると、「私はママです」がヒットします。 これは「+」の直前にある「マ」を繰り返してることになります。 「私はです」は「私は」と「です」の間に1⽂字もないのでヒットしません。 「私はです」も含めるには、次のメタ⽂字を使います。
38.
正規表現を覚えよう 38 「*」直前の⽂字を0個以上繰り返す 例)検索⽂字列:私は.*です 「私は〜です」と言う⽂字列を検索します。
39.
正規表現を覚えよう 39 検索結果 「私はです」もヒットしました。 逆に1⽂字、または0⽂字だけをヒットしたい場合は・・・
40.
正規表現を覚えよう 40 「?」直前の⽂字がある、またはない 例)検索⽂字列:私は.?です 「私は○です」、「私はです」を検索します。
41.
正規表現を覚えよう 41 検索結果 「私はです」もヒットしました。 ただ正直、「?」はあんまり使いません。(たいてい、「*」で事足りる)
42.
正規表現を覚えよう 42 「¥」エスケープシーケンス 例)検索⽂字列:0¥..+ メタ⽂字を実際に検索したい場合、「¥」でエスケープします。 上記の例では、0で始まり、⼩数点を含む⽂字列を検索します。
43.
正規表現を覚えよう 43 検索結果 0で始まり、⼩数点を含む⾏が検索されました。
44.
正規表現を覚えよう 44 便利な使い方 その2 あるフォルダのファイルの一覧を作りたい。 こんなフォルダがあったとします。 このファイル一覧を作る場合、あなたらならどうしますか?
45.
正規表現を覚えよう 45 便利な使い方 その2 検索⽂字列:.* で、「ファイル名一覧だけ作成」にチェックを⼊れてgrepすると・・・ ほら、この通り・・・あれ? ゴミ(⾏番号)がジャマですね。
46.
正規表現を覚えよう 46 便利な使い方 その2 じゃ、ジャマな部分は消してしまいましょう。 検索⽂字列:¥(.+¥)
置換⽂字列: で、置換すれば・・・ ほら、ファイルの一覧ができました。 サブフォルダがあっても 簡単にできますよ!
47.
正規表現を覚えよう 47 繰り返しの注意点 繰り返しはそのパターンが 1⾏の中で複数ヒットする場合、 その最⼤⻑の⽂字列にヒットします。 これをたまに忘れて、痛い目に合います。
48.
正規表現を覚えよう 48 どういう意味?
49.
正規表現を覚えよう 49 繰り返しの注意点 例えば・・・ 検索⽂字列:私は.+です で、以下のファイルを検索すると・・・
50.
正規表現を覚えよう 50 繰り返しの注意点 こうなります。 この⾏の場合、「.+」は「男」と、「男ですが、彼⼥も男」の 2通りの解釈があります。この場合、正規表現では 解釈できるパターンの内、最も⻑い⽂字列にヒットします。
51.
正規表現を覚えよう 51 意味は分かるけど、注意って?
52.
正規表現を覚えよう 52 よくやる失敗 こんなCSVファイルがあります。 この中のデータを初期化しようとして、 次の様に置換すると・・・
53.
正規表現を覚えよう 53 よくやる失敗 検索⽂字列:".+" 置換⽂字列:"" こうなってしまいます。 では、こう言う時は どうするか?
54.
正規表現を覚えよう 54 「?」ものぐさ検索 繰り返しを表すメタ⽂字の直後に「?」をつけると、 最も短い⽂字列にヒットします。 検索⽂字列:".+? "
置換⽂字列:"" これで、CSVファイルを 初期化できました。
55.
正規表現を覚えよう 55 {n,m} 繰り返し回数指定 以下のようなファイルがあります。 この中で、「o」が2〜4個の⽂字列を探したいとします。 さて、どうしますか?
56.
正規表現を覚えよう 56 {n,m}繰り返し回数指定 いくつか方法はあるんですが、最もシンプルなのはこう。 検索⽂字列:go{2,4}gle なんとなく、分かりますよね?{n,m}で、 n個以上、m個以下の繰り返しを意味します。
57.
正規表現を覚えよう 57 {n,m}繰り返し回数指定 n,mはそれぞれ省略する事ができます。 {n} :n個の繰り返し {,m}:m個以下の繰り返し {n,}
:n個以上の繰り返し 検索⽂字列:go{3,}gle
58.
正規表現を覚えよう 58 最後に これで、初級編は終わりです。 これだけでも、だいぶ便利さが 伝わったのではないでしょうか? ただ、正規表現を使いこなすには もう少し踏み込んだ勉強が必要です。 興味があれば、中級編に進んでみましょう。
Download now