igeeky
268 天前
# 下面的正则是把用户输入的(无意义)大于 2 个字的重复的内容变成单个. 没想到有什么好的,简单的算法实现. 使用正则就比较简单.(python 代码)
userInputText = """
测试测试测试
哈哈哈哈哈哈哈哈哈哈哈哈
哈哈哈
你在干嘛呢?你在干嘛呢?你在干嘛呢?你在干嘛呢?你在干嘛呢?你在干嘛呢?你在干嘛呢?你在干嘛呢?你在干嘛呢?
"""
import re
regex = r"(?P<r>.{2,100}?)(?P=r){2,}"
subst = "\\1"
outputText = re.sub(regex, subst, userInputText, 0, re.MULTILINE)
print("## input")
print(userInputText)
print("## output:")
print(outputText)
# 输出:
## input
测试测试测试
哈哈哈哈哈哈哈哈哈哈哈哈
哈哈哈
你在干嘛呢?你在干嘛呢?你在干嘛呢?你在干嘛呢?你在干嘛呢?你在干嘛呢?你在干嘛呢?你在干嘛呢?你在干嘛呢?
## output:
测试
哈哈
哈哈哈
你在干嘛呢?