Using regexes for extracting data from web pages? Check out ParseHub, a visual web scraping tool built by the team behind Debuggex.
任意の文字列に \' をマッチさせようとして、混乱したので書きます。 例題 pattern: \' string: backslash \' single quote 以下、raw 文字列を使った場合と使わない場合で、それぞれ書き方の答え pattern も string も raw 文字列 >>> re.findall(r'\\\'', r'backslash \' single quote') ["\\'"] >>> print re.findall(r'\\\'', r'backslash \' single quote')[0] \' pattern も string も 普通の文字列(バックスラッシュのエスケープが必要) >>> re.findall('\\\\\'', r'backslash \\\' single quote') ["\\'"] >>> print re.fi
オンラインで正規表現チェックが出来るサービスをプログラミング言語別にまとめました。 Java Regex Test Drive | 正規表現オンラインテストサイト Java regex tester .NET Framework(C#, VB) The .NET Regex Tester | Regex Hero Ruby Rubular: a Ruby regular expression editor and tester ruby regex tester Python PyRegex PHP preg_match()正規表現チェッカー PHP正規表現チェッカー PHP正規表現チェッカー 正規表現 簡易チェック PHP Javascript 正規表現チェッカー javascript aid 正規表現チェッカー(JavaScript版) | Softel labs Perl 正規表現サ
自分のためにメモ。 (肯定|否定)(先読み|戻り読み)、覚えづらい。 正規表現 パターン(boost::regex) 説明 肯定先読み (?=regex) regex に一致する文字列が始まる位置にある検索文字列と一致する。一致した文字列は記憶されず、後で使用することはできない。 たとえば "Windows (?=95|98|NT|2000)" は、"Windows 2000" の "Windows" には一致するが、"Windows 3.1" の "Windows" には一致しない。 先読み処理では、読み進まれた文字は処理済みとは見なされない。一致の検出後、次の検索処理は先読みされた文字列の後からではなく、一致文字列のすぐ後から開始される。 否定先読み (?!regex) regex に一致しない文字列が始まる位置にある検索文字列と一致する。一致した文字列は記憶されず、後で使用することは
この練習問題の冒頭を引用すると、 この章の練習問題は、本書の中で最も難易度がたかくなっています。 となって、いきなり脅されまくりですよ。そのうえねみぃので半分くらいの予定で;)。 1. 略 正規表現を書けという問題。問題文があまりに長ったるいので、問題を書く前に正規表現を先に書いた方が世の中のみんなが幸せになれそうですよね。*1で、その正規表現は、 \b(fred|wilma)\s+flintstoneとなります。 2.以下の正規表現はどんな文字列にマッチするか 問題を引用します。 /"([^"]*)"/ #1 /^0?[0-3]?[0-7]{1,2}$/ #2 /^\b[\w.]{1,12}\b$/ #3 1番は詳説正規表現でも見た表現です。意味的には、ダブルクォーテーションで囲まれた文字列にマッチして、ダブルクォートの内側の文字列を括弧で記憶する、ですかね。.*じゃなくて[^"]になっ
チラシの裏 C++で正規表現を使うとしたら、私がすぐに思いつく方法 1.他の言語に逃げる 利点:一切を忘れられる 欠点:何か大切なものを失ったかも 2.CAtlRegExp (ATL Server) 利点:VS2005で標準でついてくる 欠点:Windows、ちょっと遅いらしい。VS2008以降は入ってない。 3.GRETA 利点:速い、数個のソースコードで完結 欠点:VC++で使うことが利用条件、 バイナリサイズが滅茶苦茶大きくなる+500KBぐらい 4.boost 利点:高い移植性、準公式ながらの信頼と実績 欠点:ソースコード一式が大規模 開発環境のインストールがまじめんどい(‘A`) Cygwin・・だと? 5.System.Text.RegularExpressions (.NET) 欠点:CLR 欠点:1.ほうがマシだ 6.GNU Rx 利点:信頼性
Visual C++ 2010でTR1で定義されていた正規表現がstd名前空間に取り込まれて使用できるようになったということで、試してみる。 TR1ということで、使い方はboostとほぼ同じようです。 regex_searchで、正規表現にマッチさせる #include <regex> #include <string> #include <iostream> int main() { std::regex re("[0-9]+"); std::match_results<const char *> results; if (!std::regex_search("xxx123456yyy", results, re, std::regex_constants::match_default)) { return 1; } std::cout << "prefix: " << results
はじめに 同じパターンで表現できるものをまとめて処理ができるようになる。と考えればよいのでしょうか? Excelの質問掲示板などで見かけることがあり、どのように使うのか興味を持ったのですがよくわからないところがあります。 「Regular Expression オブジェクトは、簡単な正規表現をサポートします」とあるように、正規表現を利用した処理が可能になるようです。 Regular Expression オブジェクトを使ったコードの解読ができればと思いますので、とりあえずどのようなものかを抜粋してみます。 【参考資料】 MSDN (RegExp オブジェクト) http://msdn.microsoft.com/ja-jp/library/cc392403.aspx お試し用コード どのようになるのかを試すコードです。 A2に検索する文字列、B2にパターンを入力します。実行すると結果をMs
追記:ハッキリ言ってこの正規表現はネタなので,実際に素数判定を行いたい場合は,もっと別な賢いアルゴリズムを使ったほうが良いです 正規表現で素数が判定できるという記事を見たので試してみた. http://www.noulakaz.net/weblog/2007/03/18/a-regular-expression-to-check-for-prime-numbers/ この記事によると /^1?$|^(11+?)\1+$/ という正規表現を使うと,素数判定が出来るらしい.ある整数 n が素数かどうか判定したい場合は,"1" * nという文字列がこの正規表現にマッチするかどうかを調べればよく,マッチすれば非素数,マッチしなければ素数となる.ただし,"1" * n は,例えば,n が 4 ならば "1111" と 1 が 4 回連続して続く文字列となる. Rubyで書いた素数判定プログラムはこん
Javaにおける正規表現 Javaには正規表現に関する機能を実現するためのパッケージ java.util.regex があります (Java SDK 1.4 で導入)。 このパッケージにより、強力な正規表現の機能を持つ Perl とほぼ同等の機能が実現されています。 クラス java.util.regex.Pattern が正規表現を表すクラスで、このクラスの matcher メソッドによって、実際にマッチングを行うクラス java.util.regex.Matcher のインスタンスを生成します。 クラス Pattern は new ではなく、compile という static メソッドによりインスタンスを生成します。なお、static メソッドはクラスに属し、インスタンスがなくても呼び出すことができます。通常のメソッド呼び出しは「インスタンス名.メソッド名」ですが、static メソ
In typical UDP programming, unconnected sockets are used both in the client and server sides. sendto() is used to specify a peer address while recvfrom() is utilized to receive a peer address. In the quic library in Haskell, I used connected sockets for performance reasons. If a connected socket is created for a QUIC connection, recv() can receive data from a specific peer. This means that data is
2009年03月19日18:00 カテゴリLightweight Languages 「PHP使いはもう正規表現をblogに書くな」と言わせないでくれ ああ、まただよ... かなり使えるPHPの正規表現まとめ - IDEA*IDEA 〜 百式管理人のライフハックブログ 〜 正規表現って、プログラミング言語間の差が少ないサブ言語なのに、なぜ「PHP」がつくとダメ正規表現ばかり登場するのか。うんざりだ。 かなり使えるPHPの正規表現まとめ - IDEA*IDEA 〜 百式管理人のライフハックブログ 〜メールアドレスは厳密にチェックしようとするとなかなか難しいのですが、簡単なチェックだったらこれでOKぽいですね。 /^[^0-9][a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)*[@][a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)*[.][a-zA-Z]{2,4}$
JavaScript で形態素解析もどき JavaScript で形態素解析のようなものを。 totonの日記 - すべての漢字を取り出す正規表現 「すべての漢字を取り出す正規表現」をPHPで試す:phpspot開発日誌 これらの記事を参考にして JavaScript で漢字、ひらがな、カタカナ、英数字に区切ることをしています。 ただ、文字コード的にちゃんとできるのか、よくわかりません。Seesaa はShift_jis なのでおかしくなる場合もあるかも知れないです。 下のテキストエリアに文章を入力して解析ボタンを押すと解析結果が表示されます。解析というか、単純に改行で区切っているだけですが。 サンプルは青空文庫の太宰治 走れメロスの冒頭部分。 メロスは激怒した。必ず、かの邪智暴虐(じゃちぼうぎゃく)の王を除かなければならぬと決意した。メロスには政治がわからぬ。メロスは、村の牧人である。笛
lエクスプローラーライクなユーザーインターフェース lUNICODE文字(中国語/韓国語/ドイツ語/フランス語など)対応 (New!!) lワイルドカード( *, ? )、または正規表現(Perl5互換)を利用してファイル名の置換が可能(全角文字対応) l多段フィルタ機能、リアルタイムプレビュー、UNDO lサブフォルダ以下も処理可能 l大量のファイルでもストレスなく扱えるように設計 l別フォルダにコピー(移動)&リネーム可能 lフォルダを生成してファイルを振り分けることが可能 l分類されたグループ(フォルダ、日付、タグ情報)ごとに連番を割り振り可能 lプリセット機能で検索・置換設定の保存が可能 lファイル/フォルダのリネーム(コピー・移動・ショートカット作成・ハードリンク作成) Ø文字列や連番の追加(タイムスタンプ、フォルダ名) Ø数字や文字列の削除(へのショートカット、コピー (数字)
はじめに こんにちは。hirataraです。 私が初めて正規表現を使ったのは、PerlによるCGIでの文字列処理でした。それから私はPerlを使い続け、今では正規表現なしのコーディングは考えられないほど、正規表現を当たり前の機能として日常的に使っています。昔は標準では正規表現をサポートしていなかったJavaも、今では正規表現をサポートするようになりました。Javaだけではなく、今日ではほとんどの高級言語にとって、正規表現はなくてはならない機能であると言っても過言ではないほどメジャーな機能となっています。 本記事では、この正規表現の舞台裏に光を当てます。一見すると作ることが難しそうな正規表現エンジンですが、その根底には数学的な概念があり、その概念さえ知っていれば基礎となる機能の実装はそんなに難しくありません。この連載ではその数学的な概念をPythonを使って表現しながら、実際に動作する正規表
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く