You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将regex模式转换为包含所有匹配单个字符的列表?

解决方法

你要生成正则^[0-9a-zA-Z ._-]+$匹配的所有单个字符列表,不能直接遍历正则字符串本身——那只会拿到正则语法里的符号,拿不到区间里的所有字符。正确的做法是把正则里的每个字符范围展开:

  • 数字0-9:对应ASCII码48到57,用chr()转换为字符
  • 小写字母a-z:ASCII码97到122
  • 大写字母A-Z:ASCII码65到90
  • 单独的特殊字符:空格、.、_、-

直接用代码生成:

# 生成数字0-9
digits = [chr(i) for i in range(48, 58)]
# 小写字母a-z
lowercase_letters = [chr(i) for i in range(97, 123)]
# 大写字母A-Z
uppercase_letters = [chr(i) for i in range(65, 91)]
# 单独的特殊字符
special_chars = [' ', '.', '_', '-']

# 合并成最终的白名单列表
white_list = digits + lowercase_letters + uppercase_letters + special_chars

这样生成的white_list就包含了正则匹配的所有单个字符,你可以打印出来验证。

内容的提问来源于stack exchange,提问作者FaCoffee

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.13 19:58:22