タグ

正規表現に関するikosinのブックマーク (24)

  • Autoregex.xyz – 英語で書いた文章から正規表現を作る変換サービス

    AutoRegexは、英語から正規表現への変換をしてくれるというwebサービスです。 トップには「平易な英文からGPT-3を使って正規表現を生成します」とあります。 autoregex.xyz のトップ メールアドレスで登録して試してみました。 “phone number”と入れて出てきたのはこんな正規表現。 \d{3}-\d{3}-\d{4} 北米の番号としてはありうる正規表現かな。文字と桁だけチェックできて、形式も限定されていますが。(参考: まじめな正規表現の例) “Japanese phone number” だとこれが帰りました。 ^\d{2}-\d{4}-\d{4}$ うん。だめですねこれ。携帯電話の番号とか地方の局番とかはマッチしなさそう。あと先ほどはなかった行頭行末の条件が増えています。 中身がどう動いているかわかりませんが、正規表現とその解説文(英文)をたくさんわせて学

    Autoregex.xyz – 英語で書いた文章から正規表現を作る変換サービス
  • 正規表現クラス[:alnum:]の罠 - Qiita

    Register as a new user and use Qiita more conveniently You get articles that match your needsYou can efficiently read back useful informationYou can use dark themeWhat you can do with signing up

    正規表現クラス[:alnum:]の罠 - Qiita
  • HTML Standard

    Firefox1+Safari1+Chrome1+Opera8+Edge79+Edge (Legacy)12+Internet Explorer5.5+Firefox Android?Safari iOS?Chrome Android?WebView Android37+Samsung Internet?Opera Android10.1+ Categories:Flow content.Phrasing content.If the type attribute is not in the Hidden state: Interactive content.If the type attribute is not in the Hidden state: Listed, labelable, submittable, resettable, and autocapitalize-inhe

  • Regex Crossword

    A crossword puzzle game using regular expressions. Earn achievements completing puzzle challenges. Easy tutorials for people new to regular expressions.

    Regex Crossword
  • Regular expressions you can read: A new visual syntax (and UI)

    Lots has been written about the problems with regular expressions: learning them, debugging them, etc. I propose a more visual syntax and a keyboard-usable UI for generating regular expressions. The UI/syntax proposed here helps address issues related to readability, learnability, and memorability. Those who readily understand regex will find that this visual syntax does not slow them down. It mak

    Regular expressions you can read: A new visual syntax (and UI)
  • ここまで出来る!Vimの(ちょっと高度な)正規表現と検索/置換テクニック - Qiita

    Vimは非常に強力な正規表現とそれに伴う強力な検索/置換機能を備えています。 今回はそんなVimの正規表現と検索/置換のテクニックをまとめてみます。 Vim特有の正規表現を覚える Vimの正規表現には独特な方言がある Vimの正規表現は何かと面倒な事が多いです。 Perl等と比べて、様々なメタ文字をエスケープしてやらなければなりません。 例えば通常の正規表現であれば (abc)+ と書く事で、 文字列 abc の繰り返しを意味することができますが、 これをVimの正規表現で書こうとすると、\(abc\)\+ 等と書かなければならず、大変面倒です。 これらの方言はVimを使っていく上で自然に覚えていくにはいくのですが、 ついうっかりいつもの正規表現を使ってしまったり、 逆にプログラム側で正規表現を書く必要のあるときに Vim方言な正規表現を書いてしまったりして悲しい事が起こったりと結構厄介で

    ここまで出来る!Vimの(ちょっと高度な)正規表現と検索/置換テクニック - Qiita
  • 正規表現を解析して可視化してくれるサイトが凄すぎる件

    ある正規表現に対して、特定の文字列がマッチするかどうかをチェックするツールやサイトは沢山ありますが、正規表現そのものが何を意味しているのか、どんな文字列を期待しているのかを解析・解読・説明してくれるツールやサイトってなかなか見ない気がします。 他人の書いた正規表現を見て、「ん?」ってなったことはありませんか? 例えばこれ。 1 ^[a-zA-Z0-9-_.]@([a-zA-Z0-9_-]+\.)+[a-zA-Z]{2,4}$ これくらいなら分かりますが、複雑になってくるとつらい… いつかはマスターしたいけど…今は楽したい。 そう思ってググってみると…ありました! それがこちら。 Regexper http://www.regexper.com/ 正規表現を入力して Display をクリックすると、その正規表現が表す内容を図にして表示してくれます。 例えば先程の正規表現は、当記事の一番上の

    正規表現を解析して可視化してくれるサイトが凄すぎる件
  • メールアドレスの正規表現

    更新日 2019/5/3 戻る Perlメモへ - メールアドレスの正規表現へ Perl正規表現雑技へ 更新履歴 2019/05/03 「制御文字を除去する」「参考文献」RFC5321日語訳のリンク修正 2009/08/13 $atextのバグ修正 2009/05/06 「正規表現を簡略化する」追記 2009/04/29 「旧形式を削除する」追記 2009/04/13 「IPアドレスを除去する」追記 目次 RFCに準拠したメールアドレスの正規表現 コメントと空白文字を除去する 制御文字を除去する IPアドレスを除去する 旧形式を除去する 正規表現を簡略化する 参考文献 RFCに準拠したメールアドレスの正規表現 メールアドレスについては RFC 5322 に addr-spec として書かれています. 下記は RFC 5322 に従って導き出した正規表現です. 14,277バイトあります.

  • メールアドレスの正規表現 - tmtms のメモ

    たまにメールアドレスの形式を正規表現で表すのは不可能とかというのを目にするのですが、そんなことはありません。入れ子がなければたいていの文字列の形式は正規表現で表すことができます。 ということで、RFC5321, 5322 からメールアドレスの正規表現を書いてみました。 /\A([0-9a-z!\#$%&'*+\-\/=?^_`{|}~]+(\.[0-9a-z!\#$%&'*+\-\/=?^_`{|}~]+)*|\"([\x20\x21\x23-\x5b\x5d-\x7e]|\\[\x20-\x7e])*\")@[0-9a-z]([0-9a-z-]*[0-9a-z])?(\.[0-9a-z]([0-9a-z-]*[0-9a-z])?)*\z/i ちょっと長いですけど、最近の Ruby だと (?<hoge>) と \g<hoge> を使うことで、同じ正規表現の繰り返しを簡単に書くことができる

    メールアドレスの正規表現 - tmtms のメモ
    ikosin
    ikosin 2014/09/09
    + を弾くバリデートは悪
  • RegExr: Learn, Build, & Test RegEx

    RegExr is an online tool to learn, build, & test Regular Expressions (RegEx / RegExp). Supports JavaScript & PHP/PCRE RegEx. Results update in real-time as you type. Roll over a match or expression for details. Validate patterns with suites of Tests. Save & share expressions with others. Use Tools to explore your results. Full RegEx Reference with help & examples. Undo & Redo with {{getCtrlKey()}}

    RegExr: Learn, Build, & Test RegEx
  • Presentation: 正規表現リテラルは本当に必要なのか? (ja) | PyCon JP 2014 in TOKYO

    Makoto Kuwata Audience level: Novice Category: The Python Language / Python の言語仕様 Description 日では2013年末ごろ、PerlRubyJavaScriptのユーザを中心に、プログラミング言語における「正規表現リテラルの必要性」が多くの支持を集めました。これに対し、Pythonはコア言語仕様として正規表現リテラルを持ちませんが、Pythonが文字列処理や正規表現機能に関して大きな不満もなく使えているのも事実です。 そこで発表では、プログラミング言語において正規表現リテラルは「あれば便利だけどなくても困らない(ライブラリでカバーできる)」ものであることを、Pythonを使って説明します。具体的には、他言語ユーザが持っている「正規表現リテラルのほうが便利」「動作が高速」「バックスラッシュを二重に

  • 正規表現によるバリデーションでは ^ と $ ではなく \A と \z を使おう

    正規表現によるバリデーション等で、完全一致を示す目的で ^ と $ を用いる方法が一般的ですが、正しくは \A と \z を用いる必要があります。Rubyの場合 ^ と $ を使って完全一致のバリデーションを行うと脆弱性が入りやすいワナとなります。PerlPHPの場合は、Ruby程ではありませんが不具合が生じるので \A と \z を使うようにしましょう。 はじめに 大垣さんのブログエントリ「PHPer向け、Ruby/Railsの落とし穴」には、Rubyの落とし穴として、完全一致検索の指定として、正規表現の ^ と $ を指定する例が、Ruby on Rails Security Guideからの引用として紹介されています。以下の正規表現は、XSS対策として、httpスキームあるいはhttpsスキームのURLのみを許可する正規表現のつもりです。 /^https?:\/\/[^\n]+$/

  • Scalaの正規表現 - xuwei-k's blog

    togetter 正規表現が構文として必要かどうかという話から プログラミング言語における正規表現リテラルの必要性について こういう収集がつかなそうな話題にあまり首突っ込むの好きじゃないんですが、blogに書いておけば、まぁそれはそれでScalaをあまり知らない人にとっては役に立つだろうから、丁寧に説明しておきましょう。 togetter(と、その他関連するtweet)はあまり読んでません。 とりあえずkazuhoさんがわかりやすくblogに要点まとめているので、まずそれに対応するかたちで説明しましょう。 また、大前提としてScalaに構文としての正規表現リテラルはありません。なので、以下の説明を読んで 「いや、それは単に苦しい言い訳だし、やはり正規表現リテラルは存在したほうがいいでしょ」 と思う人もいれば 「なるほど、このくらいの機能があれば、たしかにそれほど正規表現リテラル必要ないな」

    Scalaの正規表現 - xuwei-k's blog
  • プログラミング言語における正規表現リテラルの必要性について

    Twitterに書いたことのまとめです。 プログラミング言語の仕様の一部として正規表現リテラルを提供することの得失について、JavaScriptを例に説明します。 ■より簡潔なコード 言うまでもありませんが、正規表現リテラルを使った方が簡潔なコードになります。 (new RegExp("abc")).exec(s) // リテラルを使わない場合 /abc/.exec(s) // リテラルを使った場合 また、正規表現リテラルがない場合は、文字列リテラルとしてのエスケープと正規表現としてのエスケープが二重に必要になる結果、コードの保守性が低下します注1。 new RegExp("\\\\n"); // リテラルを使わない場合 /\\n/ // リテラルを使った場合 ■エラー検出タイミング 正規表現リテラルがない場合、実際にその正規表現が評価されるまで記述エラーを検出することができません。正規表

    ikosin
    ikosin 2013/12/18
    正規表現を使うなら正規表現リテラル有ったほうがいい、という話だけでいいのに
  • 正規表現が構文として必要かどうかという話から

    FUJI Goro @__gfx__ dartVMはほんとに速くなったし、標準化はほんとに期待してる。あと正規表現さえ構文に組み込まれればサーバーサイドでも使えますよこれは。 2013-12-15 22:04:54 methane @methane @__gfx__ なんでサーバーサイドで使うのに正規表現が構文で必要なんですか…? PythonGo も正規表現構文無いけど不自由感じないし、むしろリテラルあるとシンプルな文字列操作で良い場面で正規表現を使う悪習が広まるので良くないと思うのですが。 2013-12-15 22:43:35

    正規表現が構文として必要かどうかという話から
    ikosin
    ikosin 2013/12/16
    要るか要らないかの話。学習コストと保守性・生産性のトレードオフはチームのメンバーのレベルとの兼ね合いな気がする。言語レベルだとどうだろ。文化の違いなのかな。
  • PHPしか書けないザコがメールアドレス正規表現でガチ勢に挑んでみた - Qiita

    【2021/10/15 追記】 この記事は更新が停止されています。現在では筆者の思想が変化している面もありますので,過去の記事として参考程度にご覧ください。 この記事の情報は古いので,最新の情報が欲しい方は 「PHPで各種バリデーション」 をお読みください。 訂正: IPv6のメールアドレスは IPv6: プレフィクスが必要です。PHP7.1時点でこの形式に対応していることを確認しました。 - 誤: a@[2001:0db8:bd05:01d2:288a:1fc0:0001:10ee] - 正: a@[IPv6:2001:0db8:bd05:01d2:288a:1fc0:0001:10ee] 関数ラインナップ 私の関数 function validate_email($email, $strict = true) { $dot_string = $strict ? '(?:[A-Za-z0

    PHPしか書けないザコがメールアドレス正規表現でガチ勢に挑んでみた - Qiita
  • サービス終了のお知らせ

    サービス終了のお知らせ いつもYahoo! JAPANのサービスをご利用いただき誠にありがとうございます。 お客様がアクセスされたサービスは日までにサービスを終了いたしました。 今後ともYahoo! JAPANのサービスをご愛顧くださいますよう、よろしくお願いいたします。

  • FINDJOB!終了のお知らせ | FINDJOB!

    FINDJOB! 終了のお知らせ 2023年9月29日にFINDJOB!を終了いたしました。 これまでFINDJOB!をご利用いただいた企業様、求職者様、様々なご関係者様。 大変長らくFINDJOB!をご愛顧いただき、誠にありがとうございました。 IT/Web系の仕事や求人がまだ広く普及していない頃にFind Job!をリリースしてから 約26年間、多くの方々に支えていただき、運営を続けてまいりました。 転職成功のお声、採用成功のお声など、嬉しい言葉もたくさんいただきました。 またFINDJOB!経由で入社された方が人事担当になり、 FINDJOB!を通じて、新たな人材に出会うことができたなど、 たくさんのご縁をつくることができたのではないかと思っております。 2023年9月29日をもって、FINDJOB!はその歴史の幕を下ろすこととなりましたが、 今後も、IT/Web業界やクリエイティブ

    FINDJOB!終了のお知らせ | FINDJOB!
  • IDEA * IDEA

    ドットインストール代表のライフハックブログ

    IDEA * IDEA
  • 正規表現をわかりやすく視覚化してくれる『REGEXPER』 | 100SHIKI

    おっと、これは便利かも。 REGEXPERを使えば、JavaScriptの正規表現をわかりやすく表現してくれる。 一見、難解な正規表現だが、これを通しても見ると「なるほど、この文字とこの文字にはされまれていて、この間は何の文字でも良いのだな」といったことがわかるようになる。 他の人のコードを読んでいて「?」となったときに試してみてもいいかもですな。

    正規表現をわかりやすく視覚化してくれる『REGEXPER』 | 100SHIKI