一款基于 Vite + React 的正则表达式可视化工具,帮助你直观理解正则逻辑、实时测试匹配结果。
/pattern/flags 风格的输入框,支持 g i m s u 标志位一键切换\d、\w、\s)*、+、?、{n,m})及贪婪/非贪婪模式|)分支、锚点(^、$)、反向引用# 安装依赖
npm install
# 启动开发服务器
npm run dev
# 构建生产版本
npm run build
# 预览构建产物
npm run preview
src/ ├── utils/ │ └── regexParser.js # 正则表达式 AST 解析器 ├── hooks/ │ └── useRegex.js # 正则编译 / 匹配逻辑 Hook ├── components/ │ ├── RegexInput.jsx # 正则输入 + 标志位 + 预设模板 │ ├── TestArea.jsx # 测试文本输入区域 │ ├── MatchResult.jsx # 匹配高亮 + 详情列表 │ └── RegexVisualizer.jsx # AST 铁路图可视化 ├── App.jsx # 主布局 ├── App.css # 组件样式 ├── index.css # 全局深色主题 └── main.jsx # 应用入口
项目使用 Caddy 作为静态文件服务器,支持一键 Docker 部署:
# 构建项目
npm run build
# 构建镜像
docker build -t regex-vision .
# 运行容器
docker run -d --name regex-vision --restart unless-stopped -p 80:80 regex-vision
生产级 Caddy 配置包含:
/health 健康检查端点| 类别 | 技术 |
|---|---|
| 框架 | React 19 |
| 构建 | Vite 8 |
| Web 服务 | Caddy 2 |
| 容器化 | Docker |
| CI/CD | CNB 云原生构建 |
MIT