Files
meeting-room/frontend/node_modules/regex-parser/lib/index.js
flying-hero 96f6318101 📦 添加虚拟环境和启动脚本
新增:
- backend/venv/ - Python 虚拟环境
- backend/start.sh - 启动脚本(使用虚拟环境)
- backend/requirements.txt - 依赖列表
- .gitignore - 忽略虚拟环境和缓存文件

说明:
- 每个项目使用独立虚拟环境
- 避免依赖冲突
- 启动脚本自动创建和激活虚拟环境
2026-04-04 18:29:02 +08:00

34 lines
894 B
JavaScript

"use strict";
/**
* RegexParser
* Parses a string input.
*
* @name RegexParser
* @function
* @param {String} input The string input that should be parsed as regular
* expression.
* @return {RegExp} The parsed regular expression.
*/
var RegexParser = module.exports = function (input) {
// Validate input
if (typeof input !== "string") {
throw new Error("Invalid input. Input must be a string");
}
// Parse input
var m = input.match(/(\/?)(.+)\1([a-z]*)/i);
// If there's no match, throw an error
if (!m) {
throw new Error("Invalid regular expression format.");
}
// Filter valid flags: 'g', 'i', 'm', 's', 'u', and 'y'
var validFlags = Array.from(new Set(m[3])).filter(function (flag) {
return "gimsuy".includes(flag);
}).join("");
// Create the regular expression
return new RegExp(m[2], validFlags);
};