2013-02-14 5 views
0

많은 링크 된 질문을 읽었지만 필요한 항목을 찾을 수 없습니다. 여기 내 문제 :자바 스크립트에서 정규식 검색 결과 바꾸기

inputStr = "<a b c> <c f a> <h a d>"; 

그리고 난

mychar.replace(/<[a-z](.*)>/g, '$1'); 

하지만 $1 같은 단지 나에게 <a b c>을 제공 해봤 각 <...>

OutputStr = "a c h"; 

의 첫 번째 요소를 잡아 싶습니다

아무도 아이디어?

답변

7

정규식이 잘못되었습니다. 첫 글자와 일치해야하지만 그 뒤를 따르는 모든 것은 일치하지 않아야합니다. 그리고 현재의 경우에 게으른 경기 ?에 대해 잊지 마세요 :

"<a b c> <c f a> <h a d>".replace(/<([a-z]).*?>/g, "$1"); // "a c h" 

REF : https://developer.mozilla.org/en-US/docs/JavaScript/Guide/Regular_Expressions

+0

은 그가 변경된 문제가 다시 한 번 요청해야합니다 :) 설명은 것 nice –

+0

@MichelFeldheim 그래서 내 대답이 잘못됐다고 생각하니? ;) 답변에서 설명을 제공하지 않으면 OP가 어떻게 작동하는지 알 수 있다고 가정합니다. 최소한 솔루션을 얻는다면 항상 그렇게합니다. 게다가, 나는 [MDN article on regular expression] (https://developer.mozilla.org/en-US/docs/JavaScript/Guide/Regular_Expressions)을 다시 쓸 가치가 있다고 생각하지 않는다. – VisioN

+2

대답은 정확했지만 지금은 도움이된다. –

1
inputStr = "<a b c> <c f a> <h a d>"; 

OutputStr = inputStr.replace(/<([a-z]).*?>/g, "$1"); 
+2

이 답변은 보이지 않는다. 이전에 많이 추가하십시오. –