테스트 사이트 - 개발 중인 베타 버전입니다

자바스크립트 정규식 질문 드립니다

· 14년 전 · 1007 · 3
현재 사용하고 있는 소스입니다
var b = http://www.xxxx.com/xxxx/xxxx.html?main_no=5&ds_gr=2;
if(b.match("main_no=4") || b.match("main_no=5")...... {
table1
}

if(b.match("main_no=41") || b.match("main_no=51")...... {
table2
}
...

이런식으로 main_no 값을 비교해서 table을 출력하고 있습니다.
문제는 이런식으로 하니까 main_no=4 나 main_no=41 등 main_no에 4가 포함되어 있으면 같은 결과값이 나옵니다.
즉 main_no 가 40~49 까지를 main_no=4 와 같은 출력값이 나오게 됩니다.

정확하게 main_no=4 인것만 비교 하려면 정규식을 쓰면 될텐데
한수 부탁드리겠습니다.

저 b 변수에 들어 있는 main_no값이 한자리든 두세자리든지 상관없이
main_no 값만 가져와서 정확하게 비교를 해서 조건이 맞는 해당 table 을 띄우려면 어떻게 해야 할까요?

고수님들의 한수 부탁드리겠습다.
시간이 급박해서 그러니 이해해 주시기 바랍니다.

꼭 답변 부탁드리겠습니다.
복받으세요.<div class='small'>[이 게시물은 관리자님에 의해 2011-10-31 16:57:14 JavaScript에서 이동 됨]</div>

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

댓글 3개

[급조]

<script>
var b = "http://www.xxxx.com/xxxx/xxxx.html?main_no=50&ds_gr=2";
if(b.match("main_no=4[^0-9]+") || b.match("main_no=5[^0-9]+")) {
alert('1');
}
</script>

되기는 됩니다. ^^
<script>
var b = "http://www.xxxx.com/xxxx/xxxx.html?main_no=5&ds_gr=2";
var m = b.match("main_no=([0-9]+)");
alert(m[1]);
</script>

m[1] 값으로 비교를 하시면 됩니다.
14년 전
친절한 답변 감사드립니다. 좋은 하루 되세요.

게시글 목록

번호 제목
12307
12306
12305
12304
12303
JavaScript 계산기
12302
12301
12300
12299
12298
12297
12296
12295
12294
12293
12292
12291
12290
12289
12288
12287
12286
12285
12284
12283