자바스크립트 정규식 질문 드립니다 > 퍼블리셔팁

퍼블리셔팁

퍼블리싱과 관련된 유용한 정보를 공유하세요.
질문은 상단의 QA에서 해주시기 바랍니다.

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

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

본문

현재 사용하고 있는 소스입니다
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>
추천
0
  • 복사

댓글 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] 값으로 비교를 하시면 됩니다.
© SIRSOFT
현재 페이지 제일 처음으로