Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
基本正規表現における バックスラッシュの用途と matchメソッドの確認方法について
Search
echizenyayota
July 29, 2017
Programming
180
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
基本正規表現における バックスラッシュの用途と matchメソッドの確認方法について
メタ文字のバックスラッシュの使い方や、JavaScriptにおける配列の見方や意味など
echizenyayota
July 29, 2017
More Decks by echizenyayota
See All by echizenyayota
日本語話者と英語話者のためのIT技術者交流コミュニティ_事始め_日本語_英語_.pdf
echizenyayota
0
510
外出自粛期間のおすすめ! オンラインサービスで 自由気ままな英語学習
echizenyayota
0
590
Visual Studio CodeでJavaScriptプログラミング
echizenyayota
0
380
他人のソースコードをすばやく読むコツ 項とJavaScriptの演算子
echizenyayota
0
140
ドットインストールの質問回答サービスで身につくプログラミング学習法
echizenyayota
0
160
「Webパフォーマンス改善セミナー」 概要説明
echizenyayota
1
87
JavaScriptの正規表現で リファラースパムを退治した話
echizenyayota
0
160
JavaScriptの新しい文法を学習しよう
echizenyayota
1
360
さくらのVPSでプラグインを使わないWordPressのバックアップ
echizenyayota
0
1.5k
Other Decks in Programming
See All in Programming
市販E-Readerを乗っ取れ 〜Embedded Swiftで電子ペーパーガジェットを制御する〜
trickart
0
130
Hono + Inertia + React で LP を構築した話
oukayuka
2
220
Gmail/Google DriveをトリガーにAIエージェントを動かそう! / Run AI agents with Gmail/Google Drive as triggers!
har1101
3
480
思考垂れ流し開発 ~音声入力 × AIエージェント × 開発ハーネスによる試行錯誤~
npostring
0
990
AIに既存システムを理解させる技術 ~レガシーを見捨てないハーネスエンジニアリング入門~
ochtum
0
210
AgentCore CLI で進化した AWS での AI エージェントの作り方 : 必要な機能を必要な時に
icoxfog417
PRO
2
200
標準パッケージに uuid が追加された 背景から見る Go らしい意思決定 / go_127_uuid_decision
convto
4
3.4k
Claude Codeを組織的に動かして月400PRを実現した話
happy_ryo
0
260
Vibes Containers 〜AIで変わるコンテナ設計と運用〜
tkikuc
3
510
ハーネス設計入門 〜プロンプト、コンテキストの次〜
kinopeee
55
36k
FastAPI の並行処理モデルを完全に理解する
hoto17296
9
3.8k
「AI時代、配布するPythonコードをどう守るか: 難読化の実験と判断軸」 #PyconJP2026
pkshadeck
PRO
2
180
Featured
See All Featured
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.7k
Music & Morning Musume
bryan
47
7.4k
Paper Plane (Part 1)
katiecoart
PRO
1
11k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.3k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.3k
Color Theory Basics | Prateek | Gurzu
gurzu
0
460
WCS-LA-2024
lcolladotor
0
820
Embracing the Ebb and Flow
colly
88
5.2k
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
420
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.6k
Transcript
基本正規表現における バックスラッシュの用途と matchメソッドの確認方法について 2017年7月19日(水)いろいろ初心者もくもく勉強会の日 in JUSO Coworking
よくあるバックスラッシュの例 • \n → 改行を表す。 • \t → タブを表す。 •
\d → 数字を表す。([0-9]と同じ)
メタ文字を打ち消すバックスラッシュの例 • \. → 「.」 • \* → 「*」 • \/\/
→「//」
I have two pens. <script> var i = 'I have
(two pens)'.match(/(two pen.)/)[0]; var j = 'I have (two pens.)'.match(/\(two pens\.\)/)[0]; </script>
パターンマッチの違い • i → “two pens”とマッチ • j → “
(two pens.)”とマッチ
JavaScriptにおけるパターンマッチの確認方法 末尾の[0]はなに?
デバッグコンソール <script> var i = 'I have (two pens)'.match(/(two pen.)/)[0];
var j = 'I have (two pens.)'.match(/\(two pens\.\)/)[0]; console.log(i); console.log(j); </script>
デバッグコンソールの結果 two pens (two pens.)
[0]をとってデバッグコンソール [ 'two pens', 'two pens', index: 8, input: 'I
have (two pens)' ] [ '(two pens.)', index: 7, input: 'I have (two pens.)' ]
matchメソッドの返り値 “全てのマッチを含む配列及び括弧内で捕獲された結果の配列、又はマッチが見つから なかった場合はnullを返します。” String.prototype.match() - JavaScript | MDN https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/St ring/match
[0]→配列の要素番目
配列の要素数 var k1 = 'I have (two pens)'.match(/two pens/); var
k = 'I have (two pens)'.match(/(two pen.)/); var k2 = 'I have (two pens)'.match(/(two) (pen.)/); console.log(k1); console.log(k); console.log(k2);
デバッグコンソールの結果 [ 'two pens', index: 8, input: 'I have (two
pens)' ] [ 'two pens', 'two pens', index: 8, input: 'I have (two pens)' ] [ 'two pens', 'two', 'pens', index: 8, input: 'I have (two pens)' ]
デバッグコンソール時のルール 「メタ文字として括弧を使った場合、配列の 1番目以降に括弧ごとのマッチ範囲の文字 列が格納される」
デバッグコンソールの解説(1行目) var k1 = 'I have (two pens)'.match(/two pens/); [
'two pens', index: 8, input: 'I have (two pens)' ] メタ文字としての丸カッコが使われていない。パターン マッチの値しか返ってこない
デバッグコンソールの解説(2行目) var k = 'I have (two pens)'.match(/(two pen.)/); [
'two pens', 'two pens', index: 8, input: 'I have (two pens)' ] メタ文字としての丸カッコが1つ使われている。パターン マッチの値とその範囲が1つ返る。
デバッグコンソールの解説(3行目) var k2 = 'I have (two pens)'.match(/(two) (pen.)/); [
'two pens', 'two', 'pens', index: 8, input: 'I have (two pens)' ] メタ文字としての丸カッコが2つ使われている。パターン マッチの値とその範囲が2つ返る