首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >正则表达式匹配星期四,星期四,Thur,清华

正则表达式匹配星期四,星期四,Thur,清华
EN

Stack Overflow用户
提问于 2018-12-05 21:24:19
回答 2查看 224关注 0票数 0

我想要一个regexp来匹配部分工作日的名字。例如,我想要匹配“星期四”,“嘟嘟”,"thur“或”清华“。我试过“清华(Rsday)?”,但那只是与“清华”和“周四”相匹配。与缩短的工作日相匹配的完整正则表达式将过长。我试过这个regex字符串:

Mon(day)?|Tue(sday)?|Wed(nesday)?|Thu(rsday)?|Fri(day)?|Sat(urday)?|Sun(day)?

我的字符串如下所示:

下午1:00-12月1日下午1:00 十二月四日晚上八时十分U16 USPHLSk3-红色 6-12月1日下午1:00

EN

回答 2

Stack Overflow用户

发布于 2018-12-05 21:48:26

在Oracle中,我会在希望选择字符串与工作日匹配的位置进行此操作。我怀疑您可以调整正则表达式以适应您的环境:

代码语言:javascript
复制
with tbl(str) as (
  select '3-Dec Mon 1:00pm Premiere USPHL Sk3-Red' from dual union all
  select '4-Dec Tues 8:10pm U16 USPHL Sk3-Red' from dual union all
  select '6-Dec Thursday 1:00pm Premiere USPHL Sk3-Red' from dual
)
select str
from tbl
where regexp_like(str, ' (mon|tue(s)?|wed(nes)?|Thu(r)?(s)?|fri|sat(ur)?|sun)(day)? ', 'i');
票数 1
EN

Stack Overflow用户

发布于 2018-12-08 00:55:40

好的,谢谢你的帮助。最后我得到了这个regexp:

(?i)((mon|tue(s)?|wed((((n)?e)?s)?)?|thu(r)?(s)?|fri|sat(ur)?|sun)(day)?)

比我想的要复杂一些,但很有效。我的代码中需要大量的注释;-)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53640989

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档