[英]Match listing with given words separated by given list of separators with single regex?
需要檢測句子中的工作日名稱列表,用逗號,單詞AND和帶有正則表達式的“&”符號分隔。
我可以混合使用以下模式嗎?
\\b(sunday|monday|tuesday|wednesday|thursday|friday|saturday)(?:s)?\\b
(,|\\band\\b|&)\\s?
所以我可以得到這個結果:
“這只是星期一,沒人在乎星期一 。” false
沒有列表
“我喜歡周日和周六 ” true
了超過1場比賽,並且使用分隔符
“ 星期二,星期三,星期五 ,晚上11點至凌晨12點的快樂時光”, true
3個工作日,逗號分隔
好吧,這是一個詳盡的解決方案,但有一些alterations
。
正則表達式:
((sunday|monday|tuesday|wednesday|thursday|friday|saturday)s?,?\\s+){2,}|((sunday|monday|tuesday|wednesday|thursday|friday|saturday)s?,?\\s+)+(and\\s|&\\s)((sunday|monday|tuesday|wednesday|thursday|friday|saturday)s?,?)
說明:
((sunday|monday|tuesday|wednesday|thursday|friday|saturday)s?,?\\s+){2,}
匹配用逗號分隔的天數列表。 如果在一周的最后一天之前存在and或& ,則此部分將進行匹配。
((sunday|monday|tuesday|wednesday|thursday|friday|saturday)s?,?\\s+)+
與and
或&
之前的單詞列表匹配。
(and\\s|&\\s)((sunday|monday|tuesday|wednesday|thursday|friday|saturday)s?,?)
匹配星期的最后一天。
正則表達式
(((sunday|monday|tuesday|wednesday|thursday|friday|saturday)(?:s)?\s?(?:,|and|&)?\s?){2,})
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.