今日の勉強まとめ(正規表現)

xssの練習をしていたら正規表現にいちいちつまる。。

このお悩みを解決するために正規表現について勉強した主要点を軽くまとめていきたいと思います!

 

・メタ文字について

正規表現を表すための文字という意味を越えた文字

メタ文字で使われる文字をただの文字としてしようするためには" \ " バックスラッシュを利用するしかない

 

メタ文字の種類

.  -> なんでもいいという意。bashなどのワイルドカード(*)のような使い方

^ -> 行の先頭につく文字がこれで指定する文字に適するかどうかで検索してくれる

        e.g) ^ラスク   ->    ◯ラスク食べたい ×これはラスク、そのラスク欲しい

$ -> ^の末尾バージョン。

        e.g) $ラスク   ->    ◯これはラスク  ×ラスク食べたい、そのラスク欲しい

* -> *の前の文字を繰り返し、またはそれが除かれたものを指定する

  e.g)トマ*ト -> ◯トマト、トママト、トト

+ -> *が持つ性質である除かれたものもokという性質をなくしたもの

        e.g) トマ+ト -> ◯トマト、トママト  ×トト

? -> これは直前の文字が一つもないか、一つだけあるという性質のもの

  e.g) トマト -> ◯トマト、トト

| -> ここで指定した文字列のどれか

  e.g) トマト|キャベツ|にんじん -> ◯トマト、キャベツ、にんじん

-> このかっこの中に入るもののどれかという意味

  e.g) これは[火草水]タイプ -> ◯これは火タイプ、これは草タイプ、これは水タイプ

  "注意"

    ・[^文字] -> この様な場合、内の文字以外の文字が入るようになる

     e.g)A[^A-Z]C -> ◯A0C,AあC ×ABC,AEC

    ・[]内では、メタ文字はメタ文字として認識されない