2017-04-13 17 views
-1

で作業していない私は正規表現は冗長フラグ

pat = re.compile(r'([\#-]?)(?:(?!\1)[\#-])?b') 

検索するパターンを持っているが、私は冗長フラグでこれを書くためにしたい場合は、それが働いて停止します。何か案が?

pat = re.compile(r'''(
        ([\#-]?) # comment 
        (?:(?!\1)[\#-])? # comment 
         b)''', re.VERBOSE) 

答えて

1

冗長バージョンでは、正規表現全体を囲む余分な括弧があります。これにより、バックリファレンス番号が変更され、冗長バージョンの\1から\2に変更すると動作します。