LoginSignup
3
4

More than 3 years have passed since last update.

自動更新のイベント発火の正規表現の意味(/と\の意味)

Posted at

記事を書いた経緯

chatアプリのメッセージの自動更新のイベント発火させるための条件式において、複数の/(スラッシュ)や(バックスラッシュ)の意味がわかったのでアウトプットします。条件式の意味としては、『現在開いているページのURLの中に「groups数字messages」が含まれていたら、条件式がtrueになる』という意味である。

if (window.location.href.match(/\/groups\/\d+\/messages/)){
自動更新の処理
}

複数の/(スラッシュ)や(バックスラッシュ)の意味について

match(/\/groups\/\d+\/messages/)

1 両端の/(スラッシュ)に意味について

両端の/(スラッシュ)は、matchメソッドを使用する時に操作したい文字列を囲む時に使う。

match(/対象の文字列/)

2 \/groupsの/(スラッシュ)や(バックスラッシュ)の意味について

初めの(バックスラッシュ)は、次の文字をエスケープすることを意味する。
その次の/(スラッシュ)は、パスのスラッシュを意味する。

3 \/\d+の/(スラッシュ)や(バックスラッシュ)の意味について

初めの(バックスラッシュ)は、次の文字をエスケープすることを意味する。
その次の/(スラッシュ)は、パスのスラッシュを意味する。

\d+の意味について
\dは、数字にマッチしていることを意味する。
ex.groups/1/messagesのパスの1の部分を意味する。

+は、直前の文字の 1 回以上の繰り返しにマッチしていることを意味する。
ex.groups/1234/messagesのパスであれば、数字が繰り返し使われているので、+が必要となる。

4 \/messagesの/(スラッシュ)や(バックスラッシュ)の意味について

初めの(バックスラッシュ)は、次の文字をエスケープすることを意味する。
その次の/(スラッシュ)は、パスのスラッシュを意味する。

<参考記事>
https://pleiades.io/help/pycharm/regular-expression-syntax-reference.html
https://developer.mozilla.org/ja/docs/Web/JavaScript/Guide/Regular_Expressions
https://qiita.com/iLLviA/items/b6bf680cd2408edd050f
https://blog.siteanatomy.com/2017/10/regexp-for-goal-destination.html

location.hrefについて
https://www.sejuku.net/blog/26999
http://alphasis.info/2013/07/javascript-locationobject-href/

3
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
4