字幕表 動画を再生する AI 自動生成字幕 字幕スクリプトをプリント 翻訳字幕をプリント 英語字幕をプリント (pleasant music) (心地よい音楽) (mouse clicking) (マウスクリック) - What we're doing pattern matching over strings and SQL, - やっていることは、文字列とSQLのパターンマッチングです。 we often go to the like operator first, まず「いいね!」を押すことが多いですね。 but there's another operator called 'similar too', が、もう一つ「similar too」という演算子があります。 which is even more powerful, というのは、さらに強力なものです。 that allows us to use regular expressions. で、正規表現を使うことができます。 Plus let's look at an example, working with job titles here, さらに、ここでは役職名を使った例を見てみましょう。 (keyboard typing) (キーボード入力) and I'm going to select を選択し all the distinct job titles. (keyboard typing) すべての明確な職種を(キーボード入力) And I'm going to select that from the data size schema, そして、データサイズのスキーマからそれを選択します。 and the employees table within that schema. と、そのスキーマ内のemployeesテーブルの2つです。 And what we'll notice here そして、ここで注目するのは is we have a few different kinds of VPs, は、数種類の副社長がいます。 like VP of sale, VP of quality control. 販売担当副社長、品質管理担当副社長のように。 (breathes heavily) (大きく息をつく) We also have a number of different web, また、さまざまなWebを用意しています。 like web developer, ウェブデベロッパーのような and there's some other web designers in here, と、ここには他のウェブデザイナーもいます。 web designer three. ウェブデザイナー3名。 So we have some patterns around VP and around web そこで、VP周辺とWeb周辺にいくつかのパターンを用意しました。 that I think would be good candidates to work with. 一緒に仕事をするのに適した候補者だと思います。 So let's start with something simple. では、簡単なことから始めてみましょう。 Let's select all the VPs. 副社長全員を選ぼう (keyboard typing) (キーボード入力) Well, we could use the like operator here さて、ここでlike演算子を使うことができます and we can say where job title, で、どこの職種の人なのかがわかります。 like のように VP followed by any number of characters. VPの後に任意の数の文字が続く。 And if I execute that, そしてそれを実行すれば I'm going to see that we have five types of VPs. 5種類の副社長がいることを確認する。 Now, if I also wanted to include in this list, さて、このリストにも入れるなら。 anybody involved with web like a web developer ウェブデベロッパーなど、ウェブに携わる人なら誰でも or web designer, またはウェブデザイナー。 I could use an or clause or節を使うことができる (keyboard typing) (キーボード入力) and specify additional conditions とし、追加条件を指定する。 like job title, 職種のようなもの。 like web percent. ウェブパーセントのように And now I'm going to get a list of VPs そして、今度は副社長のリストを手に入れる。 and web developers and web designers. とWeb開発者、Webデザイナー。 Well, as you can imagine, if you have a list, まあ、さすがにリストがあればね。 a fairly long list of different patterns you want to match マッチングさせたい様々なパターンのかなり長いリスト using or clauses could get a little cumbersome. や句の使用は、少し面倒になる可能性があります。 A more succinct way of expressing the same condition 同じ条件をより簡潔に表現する方法として is to instead use the similar to clause は、代わりに similar to 節を使用します。 (keyboard typing) (キーボード入力) instead of the like clause. の代わりに、like 節を使用します。 And the way we can do that, そして、それを実現する方法。 is we can specify we want to match on a VP は、VPでマッチングするように指定することができます。 followed by any number of characters に続けて、任意の文字数 or または (keyboard typing) (キーボード入力) on web followed by any number of characters. をWebで表示し、その後に任意の文字数を入力します。 And to specify the or operator I use a single pipe. そして、or演算子を指定するために、単管パイプを使っています。 So that's the single pipe ということは、単管 and spaces are matched. (keyboard typing) とスペースがマッチングされます。(キーボード入力) So I'm going to make sure that this is the correct string. そこで、この文字列が正しいかどうかを確認します。 And because this is a list そして、これはリストであるため I'm going to wrap it in parentheses. 括弧でくくる。 So what this is saying つまり、これは何を言っているのか is exactly what the last command said, は、まさに最後のコマンドの通りです。 which is to select a distinct job titles from employee というのは、従業員から明確な職種を選択することです。 where the job title matches on VP VPで職種が一致する場合 followed by any number of characters に続けて、任意の文字数 or web followed by number of characters. またはwebの後に文字数を指定します。 So if we execute, we get the same list, だから、実行すれば同じリストが得られる。 which is what we'd expect. というのが、予想されるところです。 Now, a moment ago, さて、さっきの話。 I intentionally remove the spaces that I had put in there. 入れていたスペースをわざと外す。 Now, typically I like to use a lot of white space さて、私は通常、余白を多く使うのが好きです。 because it helps me read code a little more easily. というのも、コードを読むのが少し楽になったからです。 However, this white space is within a string. ただし、このホワイトスペースは文字列の中にある。 There's those two quotes. その2つの名言があります。 So that means it's going to become part of the pattern ということは、パターンの一部になるということです that will be matched. がマッチングされます。 So this pattern, それでこのパターン。 the first one would be VP 一の次が副社長となる followed by any number of characters. の後に任意の数の文字が続く。 And then the last character of the string is a space. そして、文字列の最後の文字がスペースになります。 In the case of the web pattern, ウェブパターンの場合。 the pattern that would be matched here is a space ここでマッチするパターンはスペースです followed by W-E-B followed by a number of characters. の後にW-E-Bが続き、その後に文字数が続きます。 So let's run that. では、それを実行してみましょう。 Okay, we don't get any results. なるほど、結果が出ないんですね。 And again, そして、もう一度。 that's because the non printing characters それは、非印刷の文字が have become part of the pattern that we're matching. が、マッチングするパターンの一部になっています。 So we want to be careful だから、私たちは気をつけたい with how we use をどう使うかで (mouse clicking) (マウスクリック) non printing characters, 非印刷文字。 especially around things like spaces and tabs. 特に、スペースやタブなどの周辺。 So if we run this again, we'll get what we expect. だから、これをもう一度実行すれば、期待通りの結果が得られるはずだ。 Okay. Now let's look at just VPs. なるほど。では、副社長だけを見てみましょう。 (keyboard typing) (キーボード入力) So here, I'm just going to work with VPs for a moment, そこで、ここではちょっと副社長と組んでみることにします。 and I'm going to intentionally make some mistakes here と、ここでわざと間違いを犯してみる。 because that'll, again, というのも、またしても。 that kind of helps us understand を理解するのに役立ちます。 how regular expressions work. 正規表現がどのように機能するか So I would expect to get all five VP types. だから、5種類のVPをすべて手に入れることができると期待している。 And we did. そして、私たちはそうしました。 Now, let's say I'm interested in only VPs さて、私がVPのみに興味があるとしますと of accounting, administration 会計、管理 and any other departments or divisions およびその他の部門 that begin with the letter A. Aから始まる So what if I have VP だから、もし私がVP and I want to say, と言いたいのです。 I'm just going to match VP VPに合わせるだけ followed by any number of characters, の後に任意の数の文字が続く。 and then I want to match on an A. で、Aで合わせたいんです。 Well, that didn't work. まあ、それはうまくいかなかったんですけどね。 What I'm trynna think what went on there? そこで何が起こったのか、考えてみました。 Well, again, this whole thing, まあ、今回も全部そうなんですけどね。 this whole entire pattern has to match. このパターン全体が一致する必要があります。 So unlike regular expressions in some programming languages そのため、一部のプログラミング言語における正規表現とは異なり where this could match on a sub string これがサブストリングにマッチする可能性がある場合 and be true in SQL, であり、SQLで真である。 the pattern has to match the entire string. の場合、パターンは文字列全体にマッチしなければなりません。 So what I am not saying だから、私が言っていないこと is what happens after the letter A は、Aの後の文字 and what I want is really anything could follow そして、私が望むものは、本当に何でもありです。 after the letter A. の後に、「A」の文字があります。 So here, I'm saying string starts with VP つまり、ここでは、文字列はVPから始まると言っているのです。 followed by a percent followed by an A, の後にパーセントが続き、その後にAが続きます。 followed by a percent に続いて、パーセント and the percent remember matches と、マッチングを覚えている割合 on any number of characters. を任意の文字数で表示します。 So that's basically giving me anything that starts with VP つまり、基本的にVPで始まるものなら何でもいいということです。 and also has an A in it anywhere. であり、また、どこかにAが入っている。 And actually all five names of VPs have an A in it. そして、実は副社長の5人の名前にはすべて「A」が入っている。 Well, really what I want is to match VP, まあ、本当に欲しいのは副社長とのマッチングなんですけどね。 followed by a single space, の後に半角スペースを入れてください。 followed by an A. の後にAをつける。 I could put in, 入れることができました。 (mouse clicking) (マウスクリック) VP space a and execute that, VPスペースaで、それを実行する。 and that will match. とマッチします。 Now, I could also say VP 今、VPとも言える (mouse clicking) (マウスクリック) followed by any character, の後に任意の文字が続く。 and I can specify that by using the underscore, とアンダースコアで指定することができるんです。 and this will also match on VP accounting, で、これはVP会計でも一致します。 and let's do a quick を簡単にやってみましょう。 (keyboard typing) (キーボード入力) check at those five. は、この5つをチェックします。 And let's say if I wanted something that started with an A そして、もし私がAから始まるものを欲しがるとします。 or an M, I could have VP, とか、Mとか、VPがあってもいい。 (mouse clicking) (マウスクリック) and I want to follow by a space と、スペースでフォローしたい and I want to match on either an A or an M. (keyboard typing) で、AかMのどちらかでマッチングさせたい(キーボード打ち込み) Now, if I ran this, さて、これを実行したら。 I'm not going to get any results, 結果が出ないんです。 because again, というのも、また forgot to put 置き忘れた (keyboard clicks) (キーボードクリック) the percent sign at the end, をクリックすると、最後にパーセント記号が表示されます。 which says match on any number of characters, は、任意の文字数でマッチすると言うものです。 following the A or following the M. Aに続くか、Mに続くか。 And here, what we see is we're getting what we expect now, そして今、私たちが見ているのは、私たちが期待するものを手に入れることです。 which is the VP of accounting and VP of marketing. というのは、経理担当のVPとマーケティング担当のVPです。 So there were other things that you can use ということは、他にも使えるものがあったんですね within regular expressions, を正規表現内で使用することができます。 other pattern, indication, specifications. 他のパターン、表示、仕様。 So for things like matching a particular character そのため、特定の文字にマッチするような場合は a certain number of times for matching on digits, 桁のマッチングに一定の回数が必要です。 I'd look at the Postgres documentation Postgresのドキュメントを見ます。 to see how you can build even more complex, をご覧いただくと、さらに複雑なものを作ることができます。 regular expressions. 正規表現を使用します。 And my one piece of advice with regular expressions そして、正規表現に関する私の1つのアドバイス is to build them incrementally. は、段階的に構築していくことです。 So start with something really simple and start building. だから、本当にシンプルなものから作り始めてください。 And when things, all of a sudden aren't behaving, そして、突然、物事がうまくいかなくなったとき。 the way you expect, you can isolate pretty quickly. が期待通りであれば、すぐに切り離すことができます。 What change you made that is changing the behavior どのような変化で動作が変化しているのか that you don't quite understand. よくわからないということで (upbeat music) (アップビート・ミュージック)
A2 初級 日本語 文字 キーボード パターン 入力 ウェブ スペース SQLチュートリアル - 正規表現によるフィルタリング (SQL Tutorial - Filter with regular expressions) 15 0 Summer に公開 2022 年 11 月 04 日 シェア シェア 保存 報告 動画の中の単語