Necesito devolver un patrón numérico usando una función y la función tiene una length parámetro.
Esto es lo que probé,
export const numericPattern = (length: number) => /[\d]{length}/; Solo quiero devolver el patrón con la longitud dada y si la longitud no se proporciona como parámetro, necesito devolver solo /[\d]/ .
Gracias
const numericPattern = (length) => { const tail = length ? "{" + length + "}" : ""; return new RegExp(`[\\d]${tail}`); }; console.log(numericPattern(1)); // -> /[\d]{1}/ console.log(numericPattern()); // -> /[\d]/Esto debería funcionar:
function rx(l){ return new RegExp("[\\d]"+(l===undefined?"":`{${l}}`),"g"); } const tst=["7864","abc"], larr=[undefined,0,1,3]; tst.forEach(t=>{ console.log("String:",t); larr.forEach(l=>{ let r=rx(l); console.log(l,r.toString(),t.match(r)); }) });