2011-04-28 9 views
1

IE와 함께 작동하는 정규식 다음이지만 Firefox 나 크롬은 작동하지 않습니다.파이어 폭스와 크롬에 대한 정규식

function CheckValidText(comment) { 
    var regex = new RegExp("^[A-Za-z0-9\*]{1}+[A-Za-z0-9[:blank:]]*"); 
    var regExpr = new RegExp(regex); 

    var result = comment.search(regExpr); 
    if(comment.search(regExpr) != -1){ 
     return true; 
    }else { 
     return false; 
    }  
} 

미리 감사드립니다.

답변

0

: 그냥 문자열을 사용하는 이전 항목의 {1}으로 {1}+

, 정확히 specifiying있어 하나 ....하지만 그때 +, 당신은 지정하고 그들 중 하나 이상. 그들은 서로 갈등을 겪고 있습니다.

요구 사항에 따라 {1} 또는 +을 삭제해야합니다.

그 중 하나 또는 다른 것을 제거하면 Firefox에서 코드가 작동합니다. (Firebug를 사용하여 테스트 됨)

그러나 @ Guffa가 말한 것처럼, 당신은 다른 정규 표현식 객체를 만드는 곳에서 이상한 논리를 갖고있는 것처럼 보입니다 - 작동하는 것처럼 보이지만 실제로는 좋지 않습니다. 다른 문제가 발생할 수도 있습니다 (Chrome에서 아직 시도하지 않았습니다).

+0

thnx..you 녀석은 훌륭합니다 .. – anonymous

1

RegExp 개체를 사용하여 어떤 브라우저에서도 작동하지 않아야하는 RegExp 개체를 새로 만듭니다. 귀하의 문제가이 비트입니다

var regex = "^[A-Za-z0-9\*]{1}+[A-Za-z0-9[:blank:]]*"; 
var regExpr = new RegExp(regex); 
관련 문제