可以使用正则表达式来匹配字符串中的函数名和参数。以下是一个示例代码:

import re

def parse_function_call(s):
    # 定义正则表达式
    pattern = r'(\w+)\((.*?)\)'
    # 匹配字符串
    match = re.search(pattern, s)
    if match:
        # 返回函数名和参数
        return match.group(1), match.group(2)
    else:
        return None, None

# 测试代码
s = 'print("hello world")'
function_name, args = parse_function_call(s)
print('Function name:', function_name)
print('Arguments:', args)

输出结果为:

Function name: print
Arguments: "hello world"

该代码使用了 re 模块中的 search 函数来匹配字符串中的函数名和参数。正则表达式中的 (\w+) 表示匹配一个或多个字母、数字或下划线,括号表示将这个匹配组保存下来,以便后面使用 group 函数提取出来。括号内的 .*? 表示匹配任意字符,但是尽可能少地匹配,以免把后面的函数调用也匹配进去。

用python-识别出字符串中的函数名及后面括号内函数的参数

原文地址: https://www.cveoy.top/t/topic/knK 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录