core: optimize regex for isValidPid

This commit is contained in:
undefined committed 2025-01-21 07:35:20 +08:00
1 parent f2c66df1c2
commit 3ea0699c20
3 files changed
+3 -3

No files matched your search

+1 -1
View File
@@ -487,7 +487,7 @@ export class ProblemModel {
let overridePid = null;
const isValidPid = async (id: string) => {
if (!(/^[A-Za-z]+[0-9A-Za-z]*$/.test(id))) return false;
if (!(/^[A-Za-z][0-9A-Za-z]*$/.test(id))) return false;
const doc = await ProblemModel.get(domainId, id);
if (doc) {
if (!override) return false;
+1 -1
View File
@@ -46,7 +46,7 @@ class ImportHojHandler extends Handler {
content.samples = examples.map((sample) => ([sample.input, sample.output]));
}
const isValidPid = async (id: string) => {
if (!(/^[A-Za-z]+[0-9A-Za-z]*$/.test(id))) return false;
if (!(/^[A-Za-z][0-9A-Za-z]*$/.test(id))) return false;
if (await ProblemModel.get(domainId, id)) return false;
return true;
};
+1 -1
View File
@@ -68,7 +68,7 @@ class ImportQduojHandler extends Handler {
}, 'html');
if (+pdoc.display_id) pdoc.display_id = `P${pdoc.display_id}`;
const isValidPid = async (id: string) => {
if (!(/^[A-Za-z]+[0-9A-Za-z]*$/.test(id))) return false;
if (!(/^[A-Za-z][0-9A-Za-z]*$/.test(id))) return false;
if (await ProblemModel.get(domainId, id)) return false;
return true;
};