Tengo una expresión regular para verificar las entradas alfanuméricas como máximo 16 que sigue
^[a-zA-Z0-9]{0,16}$cómo puedo modificar esto para comprobar que debería tener solo 1 barra diagonal. me gusta
aas/as12
12/saad
Puedes usar:
^(?!.{17})[az\d]+\/[az\d]+$Ver una demostración en línea
^ - Anclaje de línea de salida;(?!.{17}) : anticipación negativa para evitar 17 caracteres (aparte de la nueva línea). Esto puede ser más preciso y es posible que desee cambiar a 18 dependiendo de si cuenta la barra inclinada sobre los 16 caracteres alfanuméricos.[az\d]+\/[az\d]+ - 1+ caracteres alfanuméricos, una sola barra inclinada literal y nuevamente 1+ caracteres alfanuméricos.$ - Anclaje de línea final.Tenga en cuenta que utilicé coincidencias que no distinguen entre mayúsculas y minúsculas, lo que significa que su patrón JS se vería así:
/^(?!.{17})[az\d]+\/[az\d]+$/gi const regex = /^(?!.{17})[az\d]+\/[az\d]+$/i; [ "aas/as12", "12/saad", "/" ].forEach(s => console.log(`${s} --> ${regex.test(s)}`) )