gpt4 book ai didi

python - 如何将正则表达式从 perl 转换为 python

转载 作者:太空宇宙 更新时间:2023-11-03 12:14:47 25 4
gpt4 key购买 nike

在 Perl 中:

 if ($test =~ /^id\:(.*)$/ ) {

print $1;

}

最佳答案

在 Python 中:

import re

test = 'id:foo'

match = re.search(r'^id:(.*)$', test)
if match:
print match.group(1)

在 Python 中,正则表达式可以通过 re library 获得。 .

字符串前的r表示它是一个raw string literal ,这意味着不对反斜杠进行特殊处理(否则每个反斜杠都需要用另一个反斜杠进行转义,以便文字反斜杠进入正则表达式字符串)。

我在这里使用了 re.search,因为它最接近 Perl 的 =~ 运算符。还有另一个函数 re.match 做同样的事情,但只检查从字符串开头开始的匹配(与 Perl 程序员对“匹配”的定义有悖常理)。参见 this explanation有关两者之间差异的完整详细信息。

另请注意,无需对 : 进行转义,因为它不是正则表达式中的特殊字符。

关于python - 如何将正则表达式从 perl 转换为 python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4464470/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com