如何分割一个有多个分隔符和整数的字符串?

问题描述 投票:0回答:1

我正试图从AWS配置规则中拆分或提取API GW ID。Cloudwatch日志中提供了资源ID arn:aws:apigateway:us-east-1::/restapis/64bi74jqe9 我需要提取 64bi74jqe9 来进行更新-rest-api调用?

我尝试这样做,但它给我一个错误。

'str' object cannot be interpreted as an integer.
arn = "arn:aws:apigateway:us-east-1::/restapis/64bi74jqe9"

a,b,c,d,e,f,api = arn.split(":", "/")
api = int(api)

print(api)
amazon-web-services aws-api-gateway boto3 aws-config
1个回答
1
投票

split的第二个参数应该是一个count而不是第二个delimeter。

你可以用下面的代码使这段代码工作。

import re

arn = "arn:aws:apigateway:us-east-1::/restapis/64bi74jqe9"
a,b,c,d,e,f,g,api = re.split(':|\/', arn)
print(api)

0
投票

如果这个ID一直是这种格式,那么,你可以直接做以下操作

arn = "arn:aws:apigateway:us-east-1::/restapis/64bi74jqe9"
id = arn.split('/')[-1]
print(id) # should output 64bi74jqe9
© www.soinside.com 2019 - 2024. All rights reserved.