簡體   English   中英

如何使用正則表達式從字符串中提取某個數字?

[英]How can I extract a certain number from a string using Regular expressions?

我認為這可能很容易,但我沒有時間學習如何去做。

在 html 文件中,我有一類段落,讓我們說:

<p class="footnote"></p>

"p" 標簽后面總是跟數字,每次都加一。 假設第一個數字是“43”。 我希望這一系列數字從 1 開始,所以我需要從所有段落中減去 42。

例如,我想從:

<p class="footnote">43. Lorem</p>
<p class="footnote">44. Ipsum</p>. 
<p class="footnote">45. Dolor</p>. 

<p class="footnote">1. Lorem</p>
<p class="footnote">2. Ipsum</p>. 
<p class="footnote">3. Dolor</p>. 

我該怎么做?

使用 javascript 獲取文本(盡管我將使用 jQuery),拆分文本,獲取第一個元素,然后轉換為整數。

$(".footnote").each(function(){
    var text = $(this).text();  // Get text
    var num = text.split(/\s+/g)[0]; // Split by whitespace and get the first elem
    console.log(parseInt(num)); // Convert the elem to an int
});

如果您正在尋找可以處理<p class="footnote">43. Lorem</p>的正則表達式<p class="footnote">43. Lorem</p> <p class="footnote">43. Lorem</p>答案是不要使用 regex 解析 HTML

假設您已經從標簽中提取了字符串43. Lorem並且您想要獲取一個數字,那么這取決於您的要求:

查找任何數字: \\d+

在開頭查找任何數字: ^\\d+

查找任何后跟一個句點的數字: \\d+\\.

更完整的解決方案需要有關問題的更多詳細信息,包括您要使用的編程語言。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM