Files
ProxyAuto/services/aws_region.py

25 lines
559 B
Python

"""AWS 区域验证"""
from __future__ import annotations
import re
_AWS_REGION_RE = re.compile(r"^[a-z]{2}(-gov)?-[a-z]+-\d+$")
_AWS_AZ_RE = re.compile(r"^([a-z]{2}(-gov)?-[a-z]+-\d+)[a-z]$")
def normalize_aws_region(value: str | None) -> str:
raw = (value or "").strip().lower()
if not raw:
return ""
m = _AWS_AZ_RE.match(raw)
if m:
return m.group(1)
return raw
def is_valid_aws_region(value: str | None) -> bool:
if not value:
return False
return bool(_AWS_REGION_RE.match(value.strip().lower()))