2013-09-29 2 views
0

이 코드를 받았습니다.jquery 알 수없는 부분으로 문자열 바꾸기

imgsrc = imgsrc.replace('-UNKNOWN_NUMBERx50.jpg','.jpg'); 

그래서,이 제대로 값을 대체 할 수 있도록하는 것이 "80x50.jpg"또는 "120x50.jpg"또는 무엇인지에 상관없이 변경하는 방법? 사전에

감사) 정규식 어떤이있는 경우이 같은 슬래시 구분 기호를 사용하여 메타 문자를 이스케이프해야하고,이 경우에, 당신은 점을 .이 대체를 들어

+0

아직 시도한 것이 있습니까? – Jerry

+0

예 내가 찾은 일부 정규식 스 니펫을 시도했지만 정규식에 익숙하지 않고 js에서 확실히 숙련되지 않은 im으로 해결할 수 없었습니다. 찾았습니다. /^ \ d + $/ – Max

+0

읽기 [자바 스크립트 정규식] (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions?redirectlocale=en-US&redirectslug=JavaScript%2FGuide%2FRegular_Expressions)을 방문한 후 시도가 실패한 이유를 설명 할 수 있습니다). 언제 다시 물어 보거나 질문을 다시하면됩니다. –

답변

0

:

imgsrc = imgsrc.replace(/-\d+x50\.jpg/,'.jpg'); 
         ^  ^

지금 작동하는지 확인하십시오.

\d+은 1 자리 이상을 의미합니다. 앞에 0이없는 숫자를 사용하려면 \d+ 대신 다음과 같이 사용하십시오. [1-9]\d*

+0

대단히 감사합니다, 그것은 작동합니다! 지금은 거의 좋아졌지만 메타 문자에서 벗어났다는 것을 몰랐습니다. – Max

+0

@Max 리터럴을 의미하는 경우 이스케이프 처리해야합니다. 예를 들어,'.'는 모든 문자가있는 그대로 사용되지만, 이스케이프 된 경우에만 점과 일치합니다! ^^ – Jerry

관련 문제