2014-03-12 7 views
-1

배열의 문자열을 찾으려면 sql 문자열을 제거하십시오. 문자열은 다음과 같습니다.배열에서 문자열 찾기 및 제거

" specimen.snop_code = ''" 

단일 qoutes 사이에는 4 자리 숫자가 있습니다. 정규식을 사용하여 문자열을 찾으려고 생각했습니다.

pop()을 사용해 보았지만 배열에서 제거 할 문자열을 대상으로 지정해야합니다. 문자열의 모든 인스턴스를 제거해야합니다. 그래서 같은 : 작은 따옴표 사이에 같이

disease_filter = new RegExp(" specimen.snop_code = ''", 'g'); 
    for (var i=sql.length-1; i>=0; i--) { 
    if (sql[i] === disease_filter) { 
     array.splice(i, 1); 
    } 
    } 

그래서 어떻게 와일드 카드와 정규 표현식에 " specimen.snop_code = '*'"을 만들 수 있습니까?

+0

소스 문자열과 예상되는 출력 문자열의 예를 알려주십시오. – SajithNair

+0

'splice()'와 함께 정규 표현식을 사용할 수 있다고 생각하지 않습니다. 너 뭐하려고? – Barmar

+0

4 자리 숫자를 어떻게 바꾸시겠습니까? – Barmar

답변

1

당신은 첫 번째 매개 변수로 정규식으로 .replace를 사용할 수 있습니다

var input = " specimen.snop_code = 'something'"; 
var disease_filter = input.replace(/'(.*)'/gi, "'other stuff'"); 
// disease_filter is now "specimen.snop_code = 'other stuff'" 

편집 : 같은 주석 이스케이프 unneccesary 제거.

+1

regexp에서 따옴표를 이스케이프 처리 할 필요가 없습니다. – Barmar

관련 문제