Sep-27-2021, 04:04 PM
Looks like you could just feed the separator and the pattern to split().
search_info = """'inf***maint***three' *** 2 'but@@milk@@ghee @@ 3 'but@@milk@@ghee @@ -3""" for line in search_info.splitlines(): pattern, separator, position = line.split() pattern = pattern.strip("'").rstrip("'") index = int(position) if index < 0: index += 1 item = pattern.split(separator)[index-1] print(f"The {position} item from {pattern} is -> {item}")
Output:The 2 item from inf***maint***three is -> maint
The 3 item from but@@milk@@ghee is -> ghee
The -3 item from but@@milk@@ghee is -> but