Need regex for the “Project name” with following condition. Expected Result: Take alphabetical, alpha numeric, alpha numeric symbolic Actual Result:
1. Take alpha – Pass 2. Take Numeric – Pass 3. Take Alpha numeric – Pass 4. Take alpha numeric special characters - Pass 5. If Only special characters – Fail
that is, Everything is allowed but if it is just special characters and no text than it’s a problem. **Example:
- zjna5726$7&^#bsg //allowed
- %&*% // just special characters not allowed
- I tried /^[ A-Za-z0-9_@./#&+-]*$/ but did not help
- ^([w+d+]+)((-)([w+d+]+))* //did not help it is only excepting one character in between only.
Advertisement
Answer
^(?=[W_]+[a-zA-Z0-9]|[a-zA-Z0-9]+[W_]|[a-zA-Z0-9]+).+$ – This regex should fulfil your requirement.
alpha="abc"
numeric="123456789"
alphaNumeric="Abc1234"
alphaNumericSpcl="#Abc1234$!@~!"
onlySpcl="!@#$%^&*()_-+={}|][:;'".,><?/`"
randomString="!@#$%^&*()_-abde9+={}|][:;'".,><?/`"
regex=/^(?=[W_]+[a-zA-Z0-9]|[a-zA-Z0-9]+[W_]|[a-zA-Z0-9]+).+$/
console.log("Test of Alpha:",regex.test(alpha));
console.log("Test of Numeric:",regex.test(numeric));
console.log("Test of Alphanumeric:",regex.test(alphaNumeric));
console.log("Test of Alphanumeric and Special:",regex.test(alphaNumericSpcl));
console.log("Test of only Special:",regex.test(onlySpcl));
console.log("Test of Random String:",regex.test(randomString));
Output:
Test of Alpha: true Test of Numeric: true Test of Alphanumeric: true Test of Alphanumeric and Special: true Test of only Special: false Test of Random String: true