老親介護に悩む30~60代の方へ
老親介護ねっと[老人ホーム編]
トップ 老人ホームの選び方 介護関連ニュース 新規オープンホーム情報 老人ホーム取材レポート お問い合わせ リンク集 Q&A

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

回答受付中の質問

条件式に正規表現は使える?

条件式にアドレスを指定して個のページだけ式が実行されるようにしたら、ローカルやページ内リンクを押すとアドレスが変わって実行されなくなります。

今回は
we/c.html
の時と

we/c.html#goto何とか
の時に実行してほしいので。


if(pageUrl === "https://we/c.html.*")

これではいけないのですか?
難しくてよくわかりません。
そのまま正規表現を記載してはいけないので.test(pageUrl)のよう関数を条件式で実行するのですか?

f(pageUrl === "https://we/c.html#js-goto-a")
のようにページ内遷移のIDがくっつくだけですが、遷移先のIDはいろいろあるので#以下を正規表現ですべてにするだけで十分です。

if(pageUrl === "https://we/c.html.*")ではいけないのでしょうか?

投稿日時 - 2018-05-17 15:45:07

QNo.9499330

困ってます

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.2

正規表現を使うならtestメソッド
if(/^https:\/\/we\/c\.html/.test(pageUrl))

でもES2015で追加されたstartsWithメソッドを使うほうがオススメ
if(pageUrl.startsWith("https://we/c.html"))

投稿日時 - 2018-05-18 21:13:21

ANo.1

if (pageUrl.substring(0, (pageUrl + "#").indexOf("#")) === "https://we/c.html")

ではいかが?

正規表現が使いたいなら、

if (pageUrl.match(/https:\/\/we\/c.html/i))

でもいいけど。

投稿日時 - 2018-05-17 16:09:04

補足

フラグiはこれ以降はすべて対象という意味ですか?*ではないのですね

投稿日時 - 2018-05-19 20:36:34

お礼

条件式にそのままmatchメソッドを記載できるのですね。
\/\/we\/

\/
の部分はどのような意味なのでしょうか?

投稿日時 - 2018-05-19 20:33:56