In [33]: re.match('ab\\*c','ab*cd') Out[33]: <_sre.SRE_Match object; span=(0, 4), match='ab*c'>
如上,没想明白为什么能匹配到,我的匹配模式中不是使用'\'将''转义成了字符串了吗,为什么最后还能匹配到结果??谢谢!!
闭关修行中......
正規表現では、バックスラッシュ文字 ('') を使用して、特殊な形式を示したり、特殊な意味を呼び出すことなく特殊な文字を使用したりできます。これは、たとえば、次のような文字列リテラルで同じ目的で同じ文字を使用することと衝突します。リテラルのバックスラッシュと一致するには、パターン文字列として '\' を記述する必要がある場合があります。これは、正規表現が でなければならず、各バックスラッシュは通常の Python 文字列リテラル内で表現される必要があるためです。 実際、どのパターンに一致させたいのかわかりませんが、上記の方法で問題は解決されるはずです。
正規表現では、バックスラッシュ文字 ('') を使用して、特殊な形式を示したり、特殊な意味を呼び出すことなく特殊な文字を使用したりできます。これは、たとえば、次のような文字列リテラルで同じ目的で同じ文字を使用することと衝突します。リテラルのバックスラッシュと一致するには、パターン文字列として '\' を記述する必要がある場合があります。これは、正規表現が でなければならず、各バックスラッシュは通常の Python 文字列リテラル内で表現される必要があるためです。
リーリー
このルールは実際に compile 之后确实就是
compile
'ab\*c'
那么当然可以匹配目标字符串 ab*cd 中的 ab*c compile 後に適用されます リーリー
ab*cd
ab*c
一致させたくない場合はrを追加してください。
リーリー
このルールは実際に
compile
之后确实就是那么当然可以匹配目标字符串
もちろん、ターゲット文字列ab*cd
中的ab*c
compile
後に適用されます リーリーab*cd
内のab*c
と一致することもあります🎜一致させたくない場合はrを追加してください。
リーリー