一组数格式判断
给定一组数字,要求最少有 6 位,最多有 7 位,每个数字之间用空格隔开,且只能输入数字或星号。例如:
1 2 3 4 5 6* 2 * 4 5 61 2 3 4 * 6
如何判断给定的数字串是否满足以上格式要求?
判断方法
可以使用正则表达式来判断:
- import redef check_format(input_string): # 正则表达式匹配 6 或 7 个由空格分隔的数字或星号 pattern = r'^(d|*)+(s(d|*)+){5,6}$' match = re.fullmatch(pattern, input_string) return match is not None
登录后复制^表示行首。(d|*)+匹配一个或多个数字或星号。(s(d|*)+){5,6}匹配 5 到 6 个由空格分隔的数字或星号的组。
以下是使用此函数判断一些字符串的例子:
- >>> check_format('1 2 3 4 5 6')True>>> check_format('* 2 * 4 5 6')True>>> check_format('1 2 3 4 * 6')True>>> check_format('1 2 3 4 5 6 7')False>>> check_format('1 2 3 4 *')False
登录后复制
以上就是如何使用正则表达式判断数字串是否满足指定格式?的详细内容,更多请关注【创想鸟】其它相关文章!
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。