簡體   English   中英

正則表達式從字符串中查找所有匹配項

[英]Regex to find all matches of from a string

我有字符串:

TEXT OF SWITZERLAND CASABLANCA, 2041 Cash 1234e

我想要提取長度至少為4的所有字母數字值( 強制數字 ),包含或不包含特殊字符/ /\\_:.\\-|

以下是我試過的正則表達式。

(?=.{4,}$)(?=.*[0-9])([a-zA-Z0-9/\\\\_:.\\-|]+)$

但是這只捕獲了所需的模式,如果它在字符串中的最后一個。 我想捕捉所有的價值觀。 在這種情況下20411234e

我已經嘗試了答案中的解決方案和一些但沒有工作的解決方案。

\b(?=[a-zA-Z]*\d)[a-zA-Z0-9/\\_:.\-|]{4,}\b

嘗試這個。 $僅導致找到最后一個匹配項。 \\b將標記單詞邊界,您將獲得所有匹配。請參閱演示

https://www.regex101.com/r/fJ6cR4/15#python

添加到VKS的答案,正則表達式無法匹配字符串ABSTRD.910.824

我試過這個,它完美無缺。

正則表達式: \\b(?=[a-zA-Z/\\\\_:\\-.|]*\\d)[a-zA-Z0-9/\\\\_:\\-.|]{4,}\\b

暫無
暫無

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

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