正则表达式(?:2000|98)是什么意思

weigb 2007-11-02 07:10:59
[code=Ruby]
#E8.3-3.rb
strdoc=<<DOC
This is windows20002000 or windows98 system.
Windows system is BEST?
Windows2000 running in 12-31-2006,……
DOC

re = /[w|W]indows(?:98|2000) /
strdoc.gsub!(re, "Windows XP ")
re = /[1-9][0-9]\-[1-9][0-9]\-\d\d\d\d/
time = Time.now.strftime("%m-%d-%Y")
strdoc.gsub!(re, time)
puts strdoc
[/code]
...全文
61 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
kaoziji 2007-11-09
  • 打赏
  • 举报
回复
(?:98 ¦2000)
98或者2000,如果是(98 ¦2000),你可以通过获取第一个group来知道匹配到的是98还是2000。
括号中增加了"?:",不影响匹配,但不能通过group来获取。

3,425

社区成员

发帖
与我相关
我的任务
社区描述
其他开发语言 其他开发语言
社区管理员
  • 其他开发语言社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧