簡體   English   中英

正則表達式多個匹配PHP

[英]Regex Multiple Matches PHP

我想從一個字符串獲取所有數字,有-_數量和可選的前- _ space或字符串在數年底結束。

因此,我的正則表達式如下所示:

[-_][\d]+[-_ $]?

我的問題是,我彼此之間不匹配數字。 從“富-5234_2123_54-13-20”的字符串,我只得到52345420

我嘗試了以下正則表達式: (?:[-_])[\\d]+(?:[-_ $])? [-_]([\\d]+)[-_ $]? 那顯然沒有用。 我現在正在找幾個小時,我知道這不會那么難,所以我希望有人可以在這里幫助我。

如果有什么不同,我正在使用PHP preg_match_all

您只需要使用環顧四周

(?<=[-_])\d+(?=[-_ ]|$)

觀看演示

幸運的是,PHP至少支持固定寬度的look-hinds,我們可以在這里使用它。

暫無
暫無

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

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