簡體   English   中英

正則表達式提取最后一次出現特殊字符后的所有數字

[英]Regex to extract all digits after last occurrence of a special character

我想提取最后一次出現的字符“-”之后的所有數字,例如311-1974-8應該返回我8,而311-1974-348應該返回348。

編輯:

添加了注釋的說明:

實際上,它是一個外部工具,提供了自己的內置函數學家,我別無選擇,只能使用正則表達式來提取它。 不能使用JS :(

這將捕獲最后一個數字。

var str = '311-1974-348';
var matches = str.match(/-(\d+)$/);
var match = matches ? matches[1] : null;
console.log("matched? " + match);

嘗試在/[^-]+$/上進行匹配,例如:

var s = '311-1974-348';
s.match(/[^-]+$/); // => ["348"]

為什么不簡單地分裂呢?

var str = input.split('-').pop();

您在評論中提到這是針對外部工具的,因此...

-([0-9]+)$

不知道您的工具如何處理捕獲的組或其他任何東西...

試試這個/[0-9]+$/ 它適用於您提供的兩種輸入。

暫無
暫無

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

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