我有一个python f字符串,如下所示:
def send_string():
ticket_id=123
message = f'{ticket_id} Jira created successfully'
return message
def extract_ticket_from_message(message):
#pseudo code
# Is it possible to extract the ticket id without parsing the
# whole string and using regex
是否有一种方便的方法可以从f字符串中提取 ticket_id 值,而不必在Python 3.6中使用正则表达式来分析整个字符串?
答案 0 :(得分:1)
如果
def extract_ticket_from_message(message):
return message.split()[0]
然后–不使用正则表达式–
ticket_id
换句话说,第一个单词。如果ticket_id
也可以是任何字符串(因此可能包含空格),您仍然可以使用此字符串,但请截断最后3个单词。 (毕竟,您知道会发生什么。)如果"1234"
是一个以字符串表示形式结果的更复杂的对象,则没有实际方法可以将其解析回原始类/对象/ Python原语以外的任何对象。
值得注意的是:如果没有歧义,您将无法获得原始的 type 。如果原始文件是字符串,但的值为(int from, int to)[] inputRanges = { (1,2), (3,4) };
var result = from range in inputRanges
select Enumerable.Range(range.from, range.to - range.from + 1);
return result.SelectMany(x => x);
,则无法确定是否传递了字符串或数字。