Lua的最佳替代功能是什么字符串.gsub在Python中?

2024-10-03 17:21:49 发布

您现在位置:Python中文网/ 问答频道 /正文

在Python中,Lua的全局模式替换函数string.gsub(s, pattern, function)的最佳替代函数是什么?e、 g

> string.gsub("banana", "(a)(n)", function(a,b) return b..a end) -- reverse any "an"s
bnanaa  2

UPDATE:我想在Python中实现一个复杂的函数,比如Lua的string.gsub,它可以由Python的re.sub和{a1}或lambda expr来实现。在


Tags: 函数anstringreturn模式anyfunction全局
1条回答
网友
1楼 · 发布于 2024-10-03 17:21:49

由于^{}返回一对值,修改后的字符串和进行的替换数,因此在Python中,您需要使用^{}

re.subn(pattern, repl, string, count=0, flags=0)
Perform the same operation as sub(), but return a tuple (new_string, number_of_subs_made).

参见Python demo

import re
print (re.subn("(a)(n)", r"\2\1", "banana"))
# => ('bnanaa', 2)

您还可以使用匿名方法(对于更简单的情况,可以使用lambda表达式)作为替换参数:

^{pr2}$

another Python demo。在

注意:如果不需要更换数量,只需使用^{}。在

相关问题 更多 >