2008-01-01から1年間の記事一覧

ヒアドキュメントの中ではタブを使ってはいけない

PHP

PHPではまったので、記載しておきます。PHPでXMLの処理についてPHP 開発者のための XML: 第 1 回 PHP での XML を 15 分で学ぶを参考に学習をしていたのですが、どうもヒアドキュメントを使用する箇所でパースエラーになり、うまくよみこめない。私の環境はO…

秀丸エディタで使用できない正規表現

秀丸エディタで使用できない正規表現があるようなので調べてみました。調査中なので追記していく予定です。(2008/10/13 16:45) 使用できない正規表現 種類 正規表現 意味 代替 文字の指定 \d 数字 [0-9] \D 数字以外 [^0-9] \s 空白文字 [\t\n\x0B\f\r] \S…

同じパターンの繰り返しを探す正規表現

(.+)\1{1,} 「(.+)」で全ての文字列を補足グループに入れている 「\1」で最初のマッチ(補足グループ)「()」と同じ 「\1{1,}」で最初のマッチを1回以上の繰り返しを表す 「あああああ」「00」「あいうあいう」などがマッチする。 同じ数字が続く箇所を探す …

「○○○」の近くにある「△△△」を探す正規表現

後方参照(?「css」の1字以上100字以内にある「javascript」を探す場合は (?<=css).{1,100}?javascriptとすればよい。ちなみに{1,100}後の「?」で控えめなマッチングを行っている。後方参照を使わずに css.{1,100}?javascriptでもよいかもしれない。ただし、…

文字列「○○○」以外に含まれている「○」を探す正規表現

「ABCDEFG」以外に含まれている「ABC」を探したい場合は (?!=ABCDEFG)ABCとすればよい。「ABCABCABCABC」の「ABC」は対象に含れるまれるが、「ABCDEFGHIJKLMNOPQRSTUVWXYZ」の「ABC」は対象に含まれない。 関連 文字列「○○○」に含まれている「○」を探す正規…

文字列「○○○」に含まれている「○」を探す正規表現

「ABCDEFG」の中に含まれている「ABC」を探したい場合は (?=ABCDEFG)ABCとすればよい。「ABCDEFGHIJKLMNOPQRSTUVWXYZ」の「ABC」は対象に含まれるが、「ABCABCABCABC」の中の「ABC」は対象に含まれない。 関連 文字列「○○○」以外に含まれている「○」を探す正…

HTMLタグ〜内の文字列を探す正規表現

たとえば<span>〜</span>内の文字列を抜き出す場合は (?<=<span*[^>]+>).+?(?=</span>)とする。他のHTMLタグに利用する場合はspanの部分(2箇所)を変更すればよい。HTMLタグ内に属性が記述されている場合(<span class="***">〜</span>)などにも対応している。

「.html」もしくは「.htm」を探す正規表現

.html?「l?」が、「l」を1個もしくは0個を指す。

「"」〜「"」で囲まれている箇所を探す正規表現

追記(2008/10/12 22:38) 当初の方法では「"」も検索の対象に含まれる。「"」と「"」の中にある文字だけを検索する場合は以下の正規表現を使用する。なお、HTMLを検索することを念頭においているので「="〜"」の中を探すようにしている。 後方参照(? (?<=\=…

「=」の後に「'」「"」が指定されてない箇所を探す正規表現

[a-zA-z]=[^"']ただし、metaタグの文字コード指定箇所や <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> JavaScript内で記述されている「'」「"」の省略箇所も <a href="#" onclick="javascript:window.open('***.html','window','width='500',height=380,toolbar=0,status=0,resizable=yes,scrollbars=yes')"> 拾うので、改善の余地はある。</a></meta>

行末が「>」以外で終わる行を探す正規表現

[^>\n]$を考えたんだけど、まだ改善できそう。