JavaScript 형식 유효성 검사에서 문제점이 있습니다. 숫자와 대시가있는 정규식
var srNo =/^[-0-9]*$/;
var srNo = /^[0-9]+(-[0-9]+)+$/;
var srNo=/^([0-9]+-)*[0-9]+$/;
이에 대한 몇 가지 정규식을 제안 : 나는 이러한 정규 표현식을 시도하지만 제대로 일한이 형식 1-74347064527 에 번호를 저장해야합니다. 친절하게 생각합니다.
JavaScript 형식 유효성 검사에서 문제점이 있습니다. 숫자와 대시가있는 정규식
var srNo =/^[-0-9]*$/;
var srNo = /^[0-9]+(-[0-9]+)+$/;
var srNo=/^([0-9]+-)*[0-9]+$/;
이에 대한 몇 가지 정규식을 제안 : 나는 이러한 정규 표현식을 시도하지만 제대로 일한이 형식 1-74347064527 에 번호를 저장해야합니다. 친절하게 생각합니다.
문자 클래스 ([ ]
)에서, 대시 (-
)이있는 정규 표현식의 특별한 의미 - "범위"를 의미합니다 (예 : a-z
은 from 'a' to 'z'
을 의미합니다. 당신은 그것을 탈출하지 않으므로 RegExps는 정확하지 않습니다 (적어도 모든 언어에서).
업데이트 : 대시가 다른 문자 (문자 클래스의 시작 또는 끝에 위치 할 때)로 둘러싸여 있지 않으면이 구문이 올바른 것으로 나타납니다. 혼란을 드려 죄송합니다. 하나 개 이상의 숫자에 의해 다음
/^\d\-\d+$/
그것은 대시 다음에 하나의 숫자로 시작하는 문자열을, 일치, 그리고 :
대신 사용해보십시오.
감사합니다. 그것의 작동! – ABJ
추가 제약이없는 경우이 작동합니다 :
var srNo = /^\d+-\d+$/;
을 당신이 [0-9]
구문을 선호하는 경우 :
var srNo = /^[0-9]+-[0-9]+$/;
var regex = /^\d{1}-?\d{11}$/g
window.alert(regex.test('1-74347064527'));
'^ [0-9] + - [0-9] + $'또는'^ \ d + - d + $'의 문제점은 무엇입니까? – hwnd
@hwnd 당신은 이것을 의미합니다. var srNo =/^ \ d + - \ d + /; 권리 ? 작동하지 않습니다! – ABJ
더 많은 예제 나 시도를 제공 할 수 있다면 도움이 될 것입니다. – hwnd