python正则中这个正则表达怎么理解?

您正在寻找一种搜索和替换方法这在python正则中应该是re#sub()

只需[^a-zA-Z' ]+''(无)替换非字母和撇号()

- 哦,那个逃脱的角色怎么样 R:它们会在字符串内部变成单个字符 \n,例如变荿换行符这不是字母或字母'

相反如果你真的已经在你的字符串逃过一个转义字符(如:"abc\\nefg"),你应该添加\\\\.|在你的正则表达式的开始這将匹配反斜杠+任何其它字符(所以这将是:\\\\.|[^a-zA-Z' ]

如果您能解释每个表达的含义,将不胜感激

  • \\\\- 匹配一个反斜杠(为什么四个每个对都会逃脫python正则字符串编译的斜线,这将变成一个\\匹配正则表达式中的反斜杠的方法)
  • .- 匹配除换行符之外的任何字符
  • | - OR表达式匹配OR之前的内容。
  • [^...]-必须被这些字符(内部)之一
  • + - 量词,这里不需要但减少匹配会很好,从而减少执行时间(这将转化为“一个或多个术语落后”)
}

正则表达式的sub方法使用解释:

# sub函數第一个参数可以是字串也可以是(\1、\2、\3……,表示在替换中输入分组1、2、3……的文本; # 先从字符串参数temp里找到符合正则表达式规则1的所有芓串组合 # 然后对找到的所有字串组合按照sub函数第一个参数所定义的规则进行替换; # 最后把以上替换结果按照正则表达式所找到的组合的位置进行最后替换。

('E', 'v'), ('B', 'o')]如果正则表达式里没有括号组合规则,则无需此步骤; - 使用sub函数第一个参数所定义的规则r'\2'对找到的4个字串组合进行替换r'\2'表示使用正则表达是的第二个括号组合找到的结果以及三个星号,来替换对应的字符串第一个字串‘Agent Alice’被替换为‘l’,第二个字串‘Agent Carol’被替换为‘a’第三个字串‘Agent Eve’被替换为‘v’,第四个字串被替换为‘o*’;注意:如果第二步的正则表达式里没有括号组合规则則sub函数第一个参数所定义的规则里不能有\1、\2、\3……这样的格式,而只能是纯字符串所定义的纯字符串统一替换第一步所找到的四个字串; - 把以上替换结果,分别再替换到四个字串相应所在的位置最后得到以下结果:

}

我要回帖

更多关于 python正则 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信