2010-11-23 6 views
1

나는 텍스트의 단락에서 숫자의 모든 인스턴스를 찾고 싶다.Jquery 찾기 및 바꾸기 숫자

<div id='text'> 
this is the number 20px and this is the number 100 and this is the number 10. 
</div> 

그래서 나는 이것을 가지고 다음과 같이 출력하고 싶습니다. 경고에서

<script type="application/javascript"> 
     $(document).ready(function() { 

     var text = $('.text').text().toString().search(new RegExp(/^[0-9]+$/ i)); 

     alert(text);  

     });     
     </script> 

20 100 10

난 그냥 출력에 텍스트, 즉 20 100 10의 숫자를 원하는, 내가 지금이 방법 꺼져하지만 도움은 내가 내 머리를 두드리는하고 올바른 방향으로 날을 넣어 벽, 감사합니다.

+0

귀하의 패턴이 있어야한다 숫자의 배열을 줄 것이다 '/ \ +? /가', 지금 바로 funcs 생각할 수 없다 라. – Zlatev

+1

음수 (-100)가 있으면 -100 또는 100을 캡처해야합니까? –

+0

위대한 포인트 Mikael 나는 또한 음수와 10 진수에 대한 나의 정규 표현식을 수정했다. :) –

답변

1
$('#text').html().match(/\-?\d+(\.\d+)?/g).join(' ') 

은 div 요소 안에있는 모든 숫자가있는 문자열을 만듭니다.

단지 .join() 방법 당신이 요소의 ID로 '텍스트'가

Plase 노트를 제거 발견 모든 숫자의 배열을 얻을 수 있습니다, 그래서 당신은 $('#text')로를 참조 할 필요가 $('.text')

1

나는 당신이 무엇이든을 대체 할 곳 모르겠지만, 모든 숫자를 찾아,이 같은 충분하다 :

// results an array of numbers 
var results = $('#text').text().match(/\d+/g); 
+0

맞음,하지만 한자리 숫자와 일치하지 않을 것임 – Zlatev

+1

Zlatev, + 한정 기호는 하나 이상의 숫자를 의미합니다. –

+0

'/ \ d + /. test ("1")'은 하나 이상의 숫자를 의미하기 때문에 참을 반환합니다 – Harmen

1

이 사용하는 경우 :

var txt = $('#text').html().match(/\d+/g) 
가 당신에게

+0

죄송합니다, Harmen - 귀하의 답변을보기 전에 이것을 공개하고 게시하십시오. –