タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

pythonとperlとregexpに関するishideoのブックマーク (2)

  • ishideoのブックマーク / 2009年3月9日 - はてなブックマーク

    2009年03月09日00:30 カテゴリLightweight LanguagesTips regexp - ^$でなくて\A\zを使おう まずは回答から。 正規表現で「制御文字以外」のチェック - ockeghem(徳丸浩)の日記 文字エンコーディングの妥当姓 制御文字(\x00〜\x1f, \x7f)のチェック 文字列長のチェック このうち後ろ二つを正規表現として書くにはどうすればいいかを考えていました。 こういう時には、「全文字がOKならOK」と考えるのではなく、「一文字でもNGならNG」と考えると楽になります。それは「スペースと非制御文字以外」なのですから、/[^ \S]/が求めていた正規表現で、=~ではなく!~が使うべき演算子ということになります。全角スペースもOKにしたければ、/[^ \x{3000}\S]/。[追記参照] [Run via Codepad] #!perl -

  • 正規表現メモ

    \x{} \pは後続する名前が表すクラス(プロパティ、スクリプト、ブロック)に属する文字にマッチし、 \Pは後続する名前のクラスに属さない文字にマッチします。 クラスの名前が一文字のときはブレースを省略できます。 クラス名の前に^を置くことにより否定形の指定を行うことも可能です。 Perl 5.8 での変更点 Perl5.8以降(5.6でも使えたようですが)では \pや\Pで始まるプロパティ指定に標準Unicode属性を使うこともできます。 詳しくは perlunicode perlunicode - Perl における Unicode サポート を参照してください。 日語による説明が Unicodestandard にもあります。 Perl 5.8以降ではユーザーが任意のプロパティを作成することができます (IsまたはInを必ず前置)。 詳しくは perlunicode perluni

  • 1