2023 © RegexOne
メール | Twitter
前述したように、コーディング、会話、そして正規表現においても、正確であることは常に重要です。たとえば、食料品の買い物リストに「もっと .* を買ってきて」と書く人はいません。なぜなら、何を買ってくるのかわからないからです。代わりに、「牛乳をもっと買ってきて」または「パンをもっと買ってきて」と書くでしょう。正規表現では、これらの条件を明示的に定義することができます。
具体的には、グループを使用する場合、 *|* ( *論理 OR、別名パイプ*) を使用して、 *異なる文字の組み合わせ* を表すことができます。上記の例では、「もっと (牛乳|パン|ジュース) を買ってきて」というパターンを書くことで、「牛乳をもっと買ってきて」、「パンをもっと買ってきて」、または「ジュースをもっと買ってきて」という文字列のみにマッチさせることができます。
通常のグループと同様に、条件には任意の文字列やメタ文字を使用できます。たとえば、([cb]ats*|[dh]ogs?) は cats または bats、あるいは dogs または hogs にマッチします。多くの条件を持つパターンを書くのは読みにくくなる可能性があるため、複雑になりすぎる場合は、別々のパターンにすることを検討してください。
以下の小さなふわふわした生き物がいる行のみにマッチする条件付きパターンを書いてみてください。
| タスク | テキスト | |
| マッチ | 猫が好きです | ![]() |
| マッチ | 犬が好きです | ![]() |
| スキップ | 丸太が好きです | ![]() |
| スキップ | 歯車が好きです | ![]() |
| 解答 | 論理 OR を使用することで、式 (猫|犬) が好きです を使用して最初の 2 行にマッチさせることができます。しかし、丸太や歯車もかなりクールです。 |