如果要保留第一个重复的动态范围,并使用基于特定字符串的拆分进行去重,可以使用以下代码示例:
def remove_duplicates(input_string, delimiter):
unique_ranges = []
seen_ranges = set()
ranges = input_string.split(delimiter)
for range in ranges:
if range not in seen_ranges:
seen_ranges.add(range)
unique_ranges.append(range)
return delimiter.join(unique_ranges)
使用示例:
input_string = "1-5, 3-7, 1-5, 8-10, 3-7"
delimiter = ", "
result = remove_duplicates(input_string, delimiter)
print(result) # 输出:1-5, 3-7, 8-10
在这个例子中,我们首先将输入字符串根据分隔符(这里是逗号和空格)拆分成一个列表。然后,我们遍历该列表中的每个范围,并使用一个集合来跟踪已经出现过的范围。
如果某个范围在集合中没有出现过,我们将它添加到结果列表中,并将它添加到集合中以便下次检查。最后,我们将结果列表再次使用指定的分隔符进行连接,得到去重后的字符串。