2017-02-24 44 views
1

我正在進行一個項目。我有一個模擬時鐘。它創建了jQuery。這個時鐘放置在div元素中,當我想獲取數字時,結果如下所示。如何通過JavaScript獲取字符串中的數字?

Days0Hours0Minutes0Seconds2 

但我只想要號碼。像這樣:

numberArray[0] = 0; // days 
numberArray[1] = 0; // hours 
numberArray[2] = 0; // minutes 
numberArray[3] = 2; // seconds 

我該怎麼做?

謝謝大家!

編輯:

時下面的代碼使用:

$("#PageOpenTimer").text(); // for div 

結果:

Days0Hours0Minutes0Seconds2 

時下面的代碼使用:

$("#PageOpenTimer").html(); // for div 

結果:

<div class="time_circles"><canvas width="500" height="125"></canvas><div class="textDiv_Days" style="top: 44px; left: 0px; width: 125px;"><h4 style="font-size: 9px;">Days</h4><span style="font-size: 35px;">0</span></div><div class="textDiv_Hours" style="top: 44px; left: 125px; width: 125px;"><h4 style="font-size: 9px;">Hours</h4><span style="font-size: 35px;">0</span></div><div class="textDiv_Minutes" style="top: 44px; left: 250px; width: 125px;"><h4 style="font-size: 9px;">Minutes</h4><span style="font-size: 35px;">0</span></div><div class="textDiv_Seconds" style="top: 44px; left: 375px; width: 125px;"><h4 style="font-size: 9px;">Seconds</h4><span style="font-size: 35px;">1</span></div></div> 
+2

'str.match(/ \ d +/g)' –

+0

你試過了什麼代碼,你得到了什麼輸出,你想要得到什麼輸出,你在這個主題上做了什麼研究? – Sam

+1

它更好地依靠jquery插件的方法,它已經用來在頁面上形成時鐘以獲取所需的信息。這樣做會很容易,而不是手動解析。你知道你在這裏使用過哪個插件嗎? – vijayP

回答

-1

看一看這種方法,它使用TimeCircles插件的方法getTime()拿到總秒數:

$(document).ready(function() { 
 
    $(".example").TimeCircles(); 
 

 
    $(".start").click(function() { 
 
    $(".example").TimeCircles().start(); 
 
    }); 
 
    $(".stop").click(function() { 
 
    $(".example").TimeCircles().stop(); 
 
    }); 
 

 
    $(".getTime").click(function() { 
 
    var totalSeconds = $(".example").TimeCircles().getTime(); 
 
    totalSeconds = Math.ceil(Math.abs(totalSeconds)); 
 

 
    var seconds = Math.floor((totalSeconds % 60)); 
 
    var minutes = Math.floor((totalSeconds % 3600)/60); 
 
    var hours = Math.floor((totalSeconds % 86400)/3600); 
 
    var days = Math.floor((totalSeconds % (86400 * 30))/86400); 
 
    
 
    alert(days + " - "+hours+ " - "+minutes+ " - "+seconds); 
 
    
 

 
    }); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script> 
 
<script type="text/javascript" src="http://git.wimbarelds.nl/TimeCircles/inc/TimeCircles.js"></script> 
 
<link href="http://git.wimbarelds.nl/TimeCircles/inc/readme.css" rel="stylesheet"> 
 
<link rel="stylesheet" href="//netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap.min.css"> 
 

 
<script type="text/javascript" src="http://netdna.bootstrapcdn.com/bootstrap/3.0.0/js/bootstrap.min.js"></script> 
 

 
<button class="getTime">click to Get Time</button> 
 
<button class="btn btn-success start">Start</button> 
 
<button class="btn btn-danger stop">Stop</button> 
 
<div class="example"></div>

1

您可以使用此正則表達式來提取值你想

^Days(\d+)Hours(\d+)Minutes(\d+)Seconds(\d+)$ 

,然後使用$("#PageOpenTimer").text();獲得的價值和試驗用正則表達式來獲得數字的數組。

Tested in regex101

結果將是:

全場比賽0-27 Days0Hours0Minutes0Seconds2

  • 組1. 4-5 0
  • 組2 10-11 0
  • 組3. 18-19 0
  • 集團4月26-27日2
相關問題