你可以使用以下正则表达式来匹配不包含10个连续数字的字符串:
import re
pattern = r"(?!\d{10})\b\S+\b"
def check_string(string):
if re.search(pattern, string):
return "匹配"
else:
return "不匹配"
# 示例使用
strings = ["1234567890", "123 456 7890", "123456789", "abcdefg 1234567890", "abc 123 456"]
for string in strings:
print(string, check_string(string))
输出结果为:
1234567890 不匹配
123 456 7890 不匹配
123456789 匹配
abcdefg 1234567890 不匹配
abc 123 456 匹配
这里使用了负向预查 (?!...)
来排除包含10个连续数字的情况。\b
表示单词边界,\S+
匹配一个或多个非空白字符。如果字符串中包含10个连续数字,则返回"不匹配";否则返回"匹配"。
上一篇:不平衡医疗数据集上的二元分类