2012-04-04 3 views
0

다음 문자열 "/ 1234/somename"이 있으며 regexp를 사용하여 "somename"을 추출하고 싶습니다.자바 스크립트에서 두 개의 "/"사이의 문자를 제거하기위한 정규식은 무엇입니까

다음 코드를 사용하여 작업을 수행 할 수 있지만 RegExp와 동일한 작업을 수행하는 방법을 알고 싶습니다. mystring.substring(mystring.lastIndexOf("/") + 1, mystring.length)

감사

regexp와에서
+0

시도'/ [^ \ /] + $ /' –

+0

확인이 링크 [http://stackoverflow.com/questions/4962176/java-extract-part를 -of-A-문자열 간 두 특수 문자] [1] [1] : http://stackoverflow.com/questions/4962176/java-extract-part-of-a- 두 줄 사이의 특수 문자 –

답변

3

, 그것은 같이 수행 할 수 있습니다

var pattern = /\/([^\/]+)$/ 
"/1234/somename".match(pattern); 
// ["/somename", "somename"] 

패턴 문자열 $의 마지막까지 (다른 / 제외) /를 다음에 오는 모든 문자와 일치 .

그러나, 나는 아마 대신 .split()을 사용합니다 :

// Split on the/and pop off the last element 
// if a/exists in the string... 
var s = "/1234/somename" 
if (s.indexOf("/") >= 0) { 
    var name = s.split("/").pop(); 
} 
0

이 :

mystring.replace(/.*[/]/s, '') 

(주 이름에도 불구하고 "대체"고 :

mystring.substring(mystring.lastIndexOf("/") + 1, mystring.length) 

이 동일하다 ,이 메소드는 mystring을 수정하지 않고 01의 수정 된 사본을 리턴합니다 . 23,)

0

이 시도 :

mystring.match(/\/[^\/]+$/) 
관련 문제