'▽ 카테고리 (전체글)/프로그래밍'에 해당되는 글 22건

  1. JSTL 특정문자 포함한것 찾기 contains
  2. mysql 한달전 하루전 한시간전
  3. 숫자만 입력 받도록 하는 자바스크립트
  4. 자바스크립트 주석제거 삭제
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%>
<html>
<head>
<title>Using JSTL Functions</title>
</head>
<body>    
 
<c:set var="theString" value="I am a test String"/>    
 
<c:if test="${fn:contains(theString, 'test')}">       
    <p>Found test string<p>    
</c:if>    
 
<c:if test="${fn:contains(theString, 'TEST')}">       
    <p>Found TEST string<p>    
</c:if>
 
</body>
</html>
 
결과 Found test string
 
 
자바단에서,
if (str.indexOf(",") != -1) 이렇게 하면 되더군요 
if(str.contains(",")) 해도 될듯 하네요
 
 
 
cs


mysql  

한달전 where reg_date >= date_add(now(), interval -1 month)  
하루전 where reg_date >= date_add(now(), interval -1 day)  
한시간전 where reg_date >= date_add(now(), interval -1 hour)  


+이면 후가 되겠죠!  

 
 
 
 
 
기타 날짜 조건 

select date_format(D_time,"%Y-%m-%d") from 테이블명 
select date_format(D_time,"%H:%i::%s") from 테이블명 

  

  

D_time 오늘인거 가져오기 

select D_time from 테이블명 where date_format(D_time,"%Y-%m-%d") = current_date; 

  

등록된지 24시간이 안된거 가져오기 

select D_time from 테이블명 where D_time > date_sub(now(), interval 1 day); 

숫자만 입력 받도록 하는 자바스크립트 

//숫자만 입력 받도록 하는 함수 
function isNum(){ 
   var key = event.keyCode;

   if(!(key==8||key==9||key==13||key==46||key==144||(key>=48&&key<=57)||key==110||key==190)){ 
        alert('숫자만 입력 가능합니다'); 
        event.returnValue = false; 
   } 
}

 

 

 

<input type='text'........ onkeypress='isNum();'>

 

 위의 경우 영문 입력일 경우는 체크 하지만 한글 입력일 경우는 통과 하는 경우가 일어난다.

따라서   input 구문에 style='ime-mode:disabled' 를 적용 시키면 한글, 영문 모두를 막아 숫자만 입력 되도록 한다.


***

단, 크롬에선 한글입력이 된다.


var str=$("#mesgCont").val();
//스크립트/스타일 제거 
var RegExpJS = new RegExp("(<script[^>]*>(.|[\\s\\r\\n])*<"+"/script>|<style[^>]*>(.|[\\s\\r\\n])*<"+"/style>)", "gim");
str = str.replace(RegExpJS,"");   
//태그 제외 
var RegExpTag = new RegExp("<[^<|>]*>", "gim");  
str = reqlaceAll(str, RegExpTag, "");
//주석 제거   
var RegExpDS = /<!--[^>](.*?)-->/g;   
str = str.replace(RegExpDS,"");   

function reqlaceAll(str, reg, rep){
var strOld = str;
while(true){
str = str.replace(reg, rep);
if(strOld == str) break;
strOld = str;
}
return str;
}


언어마다 정규식 표현방식이 다르다.

특히 Javascript의 경우, RegExp라는 function을 사용하여 만든다. ( 물론 사용하지 않고도 만들 수 있다. 하지만 Syntax Error 를 경험하게 될것이다.)

기본적인 문법은 다음과 같다.

1
2
3
4
5
6
7
8
9
10
/**
 * 1.권장하는 방법..
 **/
var regExp = new RegExp(pattern,modifiers);
 
//또는.
/**
 * 2.같은 정규식을 만들더라도..Syntax Error가 많이 발생하는 것을 경험했다.
 **/
var regExp = /pattern/modifiers;


1번방법을 이용하여, 주석을 제거하는 정규식을 만들어 보겠다.("//" 에 해당하는 주석만 삭제된다.)



1
2
3
4
5
6
7
8
9
10
11
/**
 * "//"로 시작하고, "\n"(줄바꿈)으로 끝나는 글자(문장?)를 찾는다.
 * modifier로 gm 을 지정. g 는 global(전체검색), m은 multiline(여러줄 찾기)
 */
var regExp = new RegExp("//.*\n""gm");
/**
 * 그리고 제거하고자 하는 String value의 replace를 사용하면된다.
 * trim은 양 끝의 공백, 줄바꿈 등을 제거하기 위해 사용.
 * str은 임의의 문자.
 */
str = str.replace(regExp, "").trim()

위의 코드대로 검색하면, "//"에 해당하는 주석은 모두 제거된다.

"/* */"도 제거하는 코드는 다음에....업데이트.,,