タグ

Javascriptとregexpに関するnibushibuのブックマーク (7)

  • 変数を使う時はnew RegExp、そこで()使って$1とかで置換したい時はRegExp.$1か引用符で囲む - こんにちはこんにちはmonmonです!

    正規表現に変数を使いたくて、前に覚えたJavaScriptの正規表現で変数? - おふぃす・ぞんち開発日記みたいに re = new RegExp("^" + vname + "[0-9]+$"); ってやってたのだけど、置換文字列に$1を使うときのやり方でハマった。 var keyword = 'text'; var reg = new RegExp('(' + keyword + ')', 'gi'); var pre = 'pre'; var post = 'post'; 'text-text-text'.replace(reg, pre + $1 + post); でエラー。 なんでだ?なんでだ?と散々考えた結果、 var keyword = 'text'; var reg = new RegExp('(' + keyword + ')', 'gi'); var pre = 'pr

    変数を使う時はnew RegExp、そこで()使って$1とかで置換したい時はRegExp.$1か引用符で囲む - こんにちはこんにちはmonmonです!
  • メールアドレスを表す現実的な正規表現 - Qiita

    RFC5322で定義されているメールアドレスの書式を完全にサポートすることは簡単ではありませんが、適当な正規表現を紹介してOKとする記事があとを絶ちません。 HTML5には input[type=email] という要素があり、メールアドレスの書式チェックをクライアントサイドで行えるようになっています。このチェックでは、下記の(Perl5の記法にならった)正規表現を使っています。 /^[a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/ 注釈に この要件は電子メールの構文を定義するRFC5322に対して 意図的に違反 (willful violation) している。 とあるように、仕様を完全に満足する正規表現ではありませんので、電子メールヘッダを解析するような格的な用途に対しては不十分ですが、WEBサ

    メールアドレスを表す現実的な正規表現 - Qiita
  • 4_3.html

    四章第三回 正規表現2このページの最終更新日:2019年7月1日 正規表現の利用正規表現の利用方法として前回紹介したのはtestメソッドでした。これはある文字列がパターンにマッチするかどうかを判定するだけでした。実は、正規表現の利用法は他にもあります。 matchmatchというメソッドがあります。これは、前回のtestと同じように、正規表現と文字列をマッチング(マッチさせること)するものです。 ただし、testの場合とは逆で文字列のメソッドであり、引数に正規表現を指定します。つまり、文字列.match(正規表現)という形です。 testの返り値はマッチしたかどうかの真偽値でしたが、matchの戻り値は違います。 マッチしなかった場合matchの戻り値はnullであり、マッチした場合の戻り値は配列です。この配列の0番目の要素には、マッチした文字列が入っています。 マッチした文字列とはどうい

    4_3.html
  • 数値をカンマ区切りにする - Qiita

    数値(もしくは文字列)をカンマ区切りにする関数を書いてください その場で何も見ずに書いてくれみたいな事があったので残しときます 何かの参考になれば。何かの。 あれ、Qiitaの使い方ってこんな感じでもいいのかな… 追記 コメント欄より、一番簡単に実装するなら

    数値をカンマ区切りにする - Qiita
  • JavaScriptの正規表現で文字列を抜き出す「グループ化」

    JavaScriptの正規表現で特定の文字列を抜き出す「グループ化」について解説します。 JavaScriptで特定の文字列を抜き出して処理したいことがよくあるのですが、グループ化の使い方を忘れてネットで検索してもなかなかヒットしないので、備忘録で残しておきます(他に適切な方法があるようでしたらすいません)。 1.特定の文字列を抜き出す まず基として、特定の固定文字列を抜き出すには、match関数で次のように記述します。 var foo = 'abcdefg'; var bar = foo.match(/abc/); これは変数fooに「abc」という文字が含まれていれば、変数barに abc が設定されます。 変数fooに「abc」という文字が含まれていない場合、変数barにnullが設定されます。 この使い方は、検索したい文字列があらかじめ決まっていて、上記のような代入文ではなく、判

    JavaScriptの正規表現で文字列を抜き出す「グループ化」
  • JavascriptのRegExpコンストラクタに渡す文字列はエスケープルールに従うこと » LandEscape Graphics

    var reg = "?"; var reg_o = new RegExp(reg); alert( ("?".match(reg_o))?"match":"unmatch" );   //=> エラー var reg = "\?"; var reg_o = new RegExp(reg); alert( ("?".match(reg_o))?"match":"unmatch" );   //=> エラー var reg = "\\?"; var reg_o = new RegExp(reg); alert( ("?".match(reg_o))?"match":"unmatch" );   //=> match つまり文字列からRegExpオブジェクトを作るときは、その文字列に含まれる特殊文字をバックスラッシュでクォートして、さらにそのバックススラッシュもバックスラッシュ

  • ブラウザで正規表現のお勉強ができる『Scriptular』 | 100SHIKI

    よくあるツールではあるが、最近正規表現を勉強しなおしたのでご紹介。 Scriptularでは、インタラクティブに正規表現を試すことができるようだ。 エンジンとして使っているのはJavaScriptのようだ。クライアントサイドだけで試せるのでさくさく動いていい感じだ。 また右横にはリファレンス的に説明もあるのでいちいちどこかを検索する必要もない。 そろそろ正規表現を・・・という方は試してみてはいかがすかね。

    ブラウザで正規表現のお勉強ができる『Scriptular』 | 100SHIKI
  • 1