![](/img/trans.png)
[英]How to identify mail addresses of specific domain using Regular expressions?
[英]Using regular expressions to identify nodelists
以下信息應分為兩個數組:
期望的結果是兩個數組,其中包含所有列出的數字[089]和[120-123,215](甚至更好的是120,121,122,123而不是120-123,這是可選的)。
其他應解析的示例:
所有這些都將導致一個由兩個元素組成的數組(第一個是foo,第二個是bar),具有單個條目(例如123或145)或范圍(例如133,370,390-391或121,303)。
我始終需要兩個數組,以輕松確定該數字屬於foo還是bar。
限制
到目前為止,我嘗試了以下正則表達式: \\d{3}|foo\\d{3}|bar\\d{3}|\\d{3}-\\d{3}
。 但是,在php中使用preg_grep時,我沒有得到想要的結果。
^(?!foo\d{3},bar\d{3})(?:foo(\[(?:\d{3}(?:-\d{3})?,?)+\]|\d{3}))?,?(?:bar(\[(?:\d{3}(?:-\d{3})?,?)+\]|\d{3}))?$
現在在匹配結果中,第一組是foo
的數字,第二組是bar
的數字。
說明:
(?:\\d{3}(?:-\\d{3})?
- 三位數或三位數 , 破折號 , 三位數 (?:\\d{3}(?:-\\d{3})?,?)+
-以上重復多次,可能用逗號分隔 \\[(?:\\d{3}(?:-\\d{3})?,?)+\\]
-相同,但放在方括號中 |\\d{3}
-或者,僅三位數 (?:foo(\\[(?:\\d{3}(?:-\\d{3})?,?)+\\]|\\d{3}))?
上面的內容,但在foo
之前加上?
,?
-可選的逗號分隔foo和bar (?!foo\\d{3},bar\\d{3})
-禁止使用諸如foo123,bar456之類的東西 ^$
-從頭到尾匹配
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.