$group */ define('REG_AUTHZ_GROUP_PRI_REPS', "/^\[(.*?):(.*?)\][A-za-z0-9_=@*\s]*?@%s[\s]*=[\s]*([rw]*)/m"); /** * 匹配authz配置文件中某个用户有权限的仓库列表 * * %s => $user */ define('REG_AUTHZ_USER_PRI_REPS', "/^\[(.*?):(.*?)\][A-za-z0-9_=@*\s]*?%s[\s]*=[\s]*([rw]*)/m"); /** * 匹配authz配置文件中所有用户有权限的仓库列表 * * *=r、*=rw */ define('REG_AUTHZ_ALL_HAVE_PRI_REPS', "/^\[(.*?):(.*?)\][A-za-z0-9_=@*\s]*?\*[\s]*=[\s]*([rw]+)/m"); /** * 匹配authz配置文件中所有用户有权限的仓库列表(配置*=不代表所有人无权限 只代表未设置的用户无权限) * * *= */ define('REG_AUTHZ_ALL_NO_PRI_REPS', "/^\[(.*?):(.*?)\][A-za-z0-9_=@*\s]*?\*[\s]*=[\s]*([rw]*)/m"); /** * 匹配authz配置文件中指定仓库的指定路径 包含内容 * * 如 * [rep1:/floder] * u1=r * @g1=rw * * %s => $repName * %s => $repPath */ define('REG_AUTHZ_REP_SPECIAL_PATH_WITH_CON', "/^\[%s:%s\]([\s\S][^\[]*)/m"); /** * 匹配authz配置文件中指定仓库的指定路径 不包含内容 * * 如 * [rep1:/] * 或 * [rep2:/floder] * 等 * * %s => $repName * %s => $repPaht str_replace('/', '\/', $repPath) */ define('REG_AUTHZ_REP_SPECIAL_PATH_WITHOUT_CON', "/^\[%s:%s\]/m"); /** * 匹配authz配置文件中指定仓库的所有路径 不包含内容 * * %s => $repName */ define('REG_AUTHZ_REP_ALL_PATH_WITHOUT_CON', "/^\[%s:(.*?)\]/m"); /** * 匹配authz配置文件中指定仓库的所有路径以及包含的内容 * * %s => $repName */ define('REG_AUTHZ_REP_ALL_PATH_WITH_CON', "/^\[%s:.*\][\s\S][^\[]*/m"); /** * 将 svnadmin info $repPaht 的结果匹配为 key => value 形式 */ define('REG_REP_INFO', "/(.*):[\S]*(.*)/m"); /** * 邮箱格式校验 */ define('REG_MAIL', "/^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,})$/"); /** * 自定义配置文件读取 * * %s => $key */ define('REG_CONFIG', "/define\(\"*'*%s'*\"*\s*,\s*'*(.*?)'*\)/");