while(m = myRegexp.exec(myString)) { ... }とする。
オライリーの正規表現本を書店で見たところ、Perl/Python/JavaScriptなどの 各言語での表現例がそろっていてわかりやすかった。
|
GA | GW | G | A / amL | S | |
JavaScriptの正規表現のmatch()とexec()での/gの違い
JavaScriptの正規表現のmatch()とexec()での/gの違い 。
一つの文字列から複数のパターンを取り出して繰り返し処理を
するときは
while(m = myRegexp.exec(myString)) { ... }とする。
オライリーの正規表現本を書店で見たところ、Perl/Python/JavaScriptなどの 各言語での表現例がそろっていてわかりやすかった。 経産省のスクレイピングは、日が変わってコンテンツが 変わるたびに手直しが必要
経産省のスクレイピングは、日が変わってコンテンツが
変わるたびに手直しが必要 。総務省と警察庁はHTMLの構造が簡単で
変化がなかったので簡単だったが。経産省の場合は"001"から"005"まで、
新着情報として表示するコンテンツの種類が分かれている。
そのうち、一部のコンテンツがない日は"003 none"のように指定が
変更になる。
div の body-tab0 内は「注目情報」、div の doby-tab1内に div class="001"から div class="005"までがある。body-tab2は 「お知らせ」という文字があるが、使われていないらしいが、 よくわからない。 まず、ごみであるdiv id="00[1-5]" noneのdivブロックを削除する ことにした。また、div id="field-title"のタグを最後の 区切りになるようにした。HTMLコメント文の<!-- /Tabs -->は なぜか正規表現でひっかからなくなっていた。/ は \ で エスケープしたのだが。 経産省のWebの「注目情報」と「報道発表」のあたり、 見出しに「~の発表」とか「~の公表」などとあり、ムダ
経産省のWebの「注目情報」と「報道発表」のあたり、
見出しに「~の発表」とか「~の公表」などとあり、ムダ 。
Webの「注目情報」に表示するのだから発表そのものではないのか?
経産省の新着情報のガジェットで、経産省だけ追加で
以下のようにタイトルを編集した。
$title =~ s/
(について|を|の) #
(発表|掲載|公表) #
(いた)?(しました)?。? # しました いたしました しました。
( \( [^)]* \) )? \s* # 末尾の ( .... )
$/
/x; # 正規表現内に空白文字を入れてよい
上の正規表現による文字列の削除で、「の発表」とか「について公表しました」 とか「を掲載いたしました。」などの文字列を削除している。 数字にカンマを入れる、Perl正規表現での文字列置き換え
数字にカンマを入れる、Perl正規表現での文字列置き換え 。
1 while $numeric =~ s/(\d)(\d\d\d)(?!\d)/$1,$2/g; (sub, Comma, comma, perl, regex) よく見たらTeraTermのヘルプに'RE'という セクションがあって、やたら詳しい正規表現一覧が書いてあった 。 ちょっと確認したいときに使えそう。正規表現の構文を色分けブロック、フロー表示するstrfriend
正規表現の構文を色分けブロック、フロー表示するstrfriend 。
strfriendを作ろうとすると、正規表現がスタック型の言語に見えてくる。 最初、"strfriend" という、誰かのブックマーク名だけ見たときは、 てっきり「友達リストを一発で返すAPI」かと思った。
strfriendがイケてないのは、改行やタブ、空白文字で整形した
正規表現記述 UTF-8 の正規表現についての情報は "Unicode 正規表現" で 調べたほうがわかりやすそう 。iGoogleのガジェットとして扱われるデータが、 改行なしの理由がわかった
iGoogleのガジェットとして扱われるデータが、
改行なしの理由がわかった 。JavaScriptの正規表現(RegExp)では、
//sオプションがないため、改行があると、最初の改行から先の
文字列は一切操作できないから。ただのデータ量削減のためでは
なかった。
上のような、「漢字の羅列の抽出」も、 PerlのUTF-8対応正規表現だと簡単にできる
上のような、「漢字の羅列の抽出」も、
PerlのUTF-8対応正規表現だと簡単にできる 。
/(?: [^\p{Han}]+ (\p{Han}+) )+ /x
正規表現の機能の覚書き (2008/9/23)は (?=...) とか (?!...)の 使い方もあってよい
正規表現の機能の覚書き (2008/9/23)は (?=...) とか (?!...)の
使い方もあってよい 。その他、Longest Match の話もあり。
日ごろ不思議に思っていることを書いてみる- 04.10.5 正規表現の先頭にある $ マークは
日ごろ不思議に思っていることを書いてみる - 04.10.5 正規表現の先頭にある $ マークは ?
/$\d+\.txt$/ とあるのは、正規表現の最後に /ms オプションがついていればよさそうな気もしたが、
/$\d+\.txt$/ms やはり正規表現最初の文字が ^ でないと、マッチしない。
/^\d+\.txt$/ms これなら、マッチする "man perlre" でGoogle検索したら自分の日記が 先頭候補になってしまった 。げげ。Perlのコメント文入りの正規表現内では、 コメント文内で / を使うと文法エラーまたは divided by 0
Perlのコメント文入りの正規表現内では、
コメント文内で / を使うと文法エラーまたは divided by 0 。
Perlの正規表現で、/x オプションを指定すると、正規表現内の スペース、タブ、改行は無視され、自由にスペースを入れたり 改行したり、インデントして記述でき、たいへんわかりやすい。 また、# に続けてコメント文も記述でき、これまたたいへん わかりやすい正規表現コーディングが可能になる。 が、正規表現内のコメント文内に / が現れると、 文法エラーになったり、0除算例外になったりするので注意。 0除算例外になる例: % perl -e '$a="abc";$a=~/(b) #/co /x;' Fedora 9 の httpd 2.2.9 で、 httpd の access_log の末尾に 2 つの数字が追加されていた
Fedora 9 の httpd 2.2.9 で、
httpd の access_log の末尾に 2 つの数字が追加されていた 。
httpd の集計スクリプトが動かないので確認してみたら、
そういうことで正規表現を変える必要があった。
ログファイルの正規表現って、標準的につけてもらいたいような気が。
末尾までがちがちに正規表現を書いちゃった自分も悪いのだけれど。
Perlの
|
Regexカテゴリ
1ページ >> [Googleガジェット]残IPv4ガジェット/RSSカテゴリのしぼり込み最新日記一覧おすすめ
セキュリティの神話日々変化を続けるウイルスと、ウイルス対策メーカ、ソフト開発会社の 事情と都合を紹介しつつ、これからあるべきウイルス対策をSaaSで 展開する"AV 2.0"(一見さんお断り方式)を提唱。
Linkers & LoadersELF/a.out/COFFなどの実行ファイルの構造の詳細、メモリとアドレスの再配置の仕組み、共有ライブラリの実現方法など。(2001年)
ハイパフォーマンスWebサイト - 高速サイトを実現する14のルールWebクライアントから見た、Webサイト高速表示のためのポイント。 14の各ルール内に、いくつかバリエーションもある。
プロフェッショナル・セキュリティ・レビューパソコン、無線LAN、電子署名などのPKI(電子証明書)の動向が よくまとまっている。(JNSA編集協力
PLANEX GW-NS300N2 802.11n無線LANカードLinux用ドライバがRalink社から配布 ( 関連記事)。 Linux上のWPA-PSKでもサーバレスで利用できて便利。
マスタリングTCP/IP RTP編「作りたくなる」本。マルチメディア制御の基礎もわかる、翻訳本とは わからないほどのこなれた日本語。
C/C++ セキュアコーディングC/C++言語で脆弱性のないコーディングのための基本テクニック。グーグル八分とは何か告発サイトがGoogleから締め出される現実と検索エンジンのありかたを問う。
無線通信とディジタル変復調技術64QAM, OFDM, CDMA などのデジタル無線変調の教科書
お魚かるた「あんこうは 大口 なんでも食べる」「ひらめの目は 左側」など、
No Place To Hide行動、職歴、財産など、あらゆる個人情報が収集され、売買される現実。 「隠れ場所なし」
Ethereal Packet Sniffingパケット解析の強力ツール Ethereal の紹介。マスタリングTCP/IP(IPv6編)IPv6 ルーティング、認証プロトコルもあり。組み込みを意識した本。
GANDHI - ガンジーインド独立の指導者、マハトマ・ガンジー怒涛の偉業をたどる。
アンナと王様[DVD]子供時代のチュラロンコン・タイ国王とイギリス人家庭教師の交流と葛藤をアジアの目から描く。
エニグマ[DVD]第二次大戦中に活躍したドイツの暗号器「エニグマ」の解読に挑む。 ハードウェアだけでもすばらしいユーザインターフェースが実現できる。リンク
対応規格広告 |
|
お便りはこちらへ (sshida@gmail.com) |
見出し一覧は RSS で
|