You need to enable JavaScript to run this app. 如何校验符合X[0-180]Y[0-180]规则的用户提交数据格式?
优惠活动
大模型
产品
解决方案
定价
更多

如何校验符合X[0-180]Y[0-180]规则的用户提交数据格式?

数据格式校验实现方法

校验分为格式匹配、数值范围校验两个环节,具体实现逻辑如下:

  • 第一步:用正则做格式初筛,排除结构完全不符合要求的输入,同时提取X、Y后面的数值段
    如果你的完整输入结构和示例一致(带x = "前缀和"后缀),可以使用正则^x = "X(\d{1,3})Y(\d{1,3})"$完成匹配;如果只需要校验X数字Y数字本身的格式,把正则简化为^X(\d{1,3})Y(\d{1,3})$即可。
  • 第二步:将正则捕获到的两个数值段转为整数,分别校验是否处于0~180的闭区间,两个数值都符合要求则校验通过。

下面是Python语言的实现示例:

import re

def validate_data(input_str):
    # 匹配完整格式并捕获两个数字段
    pattern = r'^x = "X(\d{1,3})Y(\d{1,3})"$'
    match_result = re.fullmatch(pattern, input_str.strip())
    # 格式不匹配直接返回失败
    if not match_result:
        return False
    # 校验数值范围
    x_val = int(match_result.group(1))
    y_val = int(match_result.group(2))
    return 0 <= x_val <= 180 and 0 <= y_val <= 180

测试效果参考:

  • 输入x = "X180Y50"返回True
  • 输入x = "X181Y0"返回False(X数值超出范围)
  • 输入x = "XaY123"返回False(格式不匹配)
  • 输入x = "X12Y190"返回False(Y数值超出范围)

内容的提问来源于stack exchange,提问作者Abdoullah al-hajj

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.09 18:06:03