« Pythonによる簡単なフィルタ | トップページ | Googleの雲(googlecloud) »

2006/02/14

正規表現文字列の集合に含まれるかどうかの判定

ブックマークに追加する

「任意の文字列」が「任意の正規表現文字列の集合」に含まれるか否かの判断はを行うPythonのコードを書いてみた。
基本的な考え方は、「任意の正規表現文字列」をリストの要素として定義しておき、該当リストに対して、確認対象文字列を map, filter することにより判別する。

ここで、正規表現文字列の集合は

set_of_str = []
set_of_str.append( re.compile(r'xxxxxxx') )

と組み立てておき、 この組み立てられたリストに対して

map(lambda x: x.search(target_str), set_of_str)

とすることにより、正規表現文字列に該当する文字列であれば、NULL以外がリストに含まれる。
さらにこの結果のリストについて、NULL以外のオブジェクトの数を数え、1以上の数が帰ってくれば確認対象文字列が正規表現の集合に含まれていることがわかる。
該当文字列が何カ所に含まれるかを数える場合、

filter(lambda y: bool(y), map(lambda x: x.search
(target_str), set_of_str) )

# 注)上記は1行
で作成されるリストの長さを調べれば該当個数も明確になる。


●お探し物は見つかりましたか?まだの方は以下の検索をご利用下さい。
 
当ブログ内 (within this blog) Web
●当ブログのRSSフィードをお手持ちのRSSリーダーにご登録いただくと、エントリ追加時のみ更新通知が届くため、確認の手間が省けます。よろしければ、どうぞ。
当ブログのRSSフィード
●当ブログの更新情報+α(deliciousのブックマーク他)はTwitter経由でも確認できます。是非フォローしてください。(実はRSSフィードよりも更新が早かったりします)

|

Python」カテゴリの記事

blog comments powered by Disqus


●Google広告


●その他の広告



トラックバック

この記事のトラックバックURL:

●トラックバックされる方へのご注意
本文中でこのエントリのアドレスを引用してください。引用(言及リンク)がない場合はスパム(迷惑行為)として削除します。
なお、迷惑行為かどうかを人力で判定しているため、トラックバックが反映されるまでに少々、お時間を頂いています。
For foreigners: If you would like to trackback to this entry, please include permlink of this entry in your entry. If your entry doesn't include this permlink, I will delete your trackback as spam.

この記事へのトラックバック一覧です: 正規表現文字列の集合に含まれるかどうかの判定:

 
Google