2.6

2012-01-24 18 views
5

で鈍感なPythonの正規表現の分割ケースIは、Python 2.7で動作する次のコードを持っている:私はそれは、Python 2.6で同様のPython 2.7で動作するようにする必要があり2.6

entry_regex = '(' + search_string + ')' 
entry_split = re.split(entry_regex, row, 1, re.IGNORECASE) 

を2.6 re.splitは」doesnの第4パラメータとしてフラグ(re.IGNORECASE)を受け入れる。どんな助け?おかげ

答えて

12

あなたはそれ大文字小文字を区別しません作るために、正規表現に追加することができます(私?):

>>> import re 
>>> reg = "(foo)(?i)" 
>>> re.split(reg, "fOO1foo2FOO3") 
['', 'fOO', '1', 'foo', '2', 'FOO', '3'] 
0

ああ、私は正規表現オブジェクトにコンパイルすることができ、自分でそれを見つけた:

entry_regex = re.compile('(' + search_string + ')', re.IGNORECASE) 
entry_split = entry_regex.split(row, 1) 
2

re.compile()を使用してre.RegexObjectを作成してから、split()メソッドを呼び出します。

例:

>>> re.compile('XYZ', re.IGNORECASE).split('fooxyzbar') 
['foo', 'bar'] 
関連する問題