设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 1756|回复: 4
打印 上一主题 下一主题

[已经解决] 关于正则表达式

 关闭 [复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
169 小时
注册时间
2011-1-5
帖子
92
跳转到指定楼层
1
发表于 2011-5-12 08:51:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
以下是秀秀的匹配手机号的表达式:
module ABC def self.reg(string)   # 转换为string   if string.is_a?(Numeric)     string = string.to_s   end   if string.size != 11     p "请输入11位数字"     return   end   #开始匹配  regexp为规 则  regexp = /[1][35][0-9][0-9] [0-9][0-9][0-9][0-9][0-9][0-9][0-9]/  if regexp =~ string      p "匹配成功"      return   else      p "匹配失败"      return   end end end

然后在地图事件上调用ABC.reg(135*********)会出现“匹配失败”,请高手指点一下。

Lv1.梦旅人

梦石
0
星屑
110
在线时间
953 小时
注册时间
2007-4-25
帖子
805
2
发表于 2011-5-12 10:03:43 | 只看该作者
给 regexp 赋值那一行,两个 [0-9] 之间多了一个空格。

另:表达式这么写有些冗余了,不如:
  1. regexp = /1[35][0-9]{9}/
复制代码

评分

参与人数 1星屑 +600 收起 理由
「旅」 + 600

查看全部评分

[email protected]:~> repeat 1 fortune
Matz is nice, so we are nice.
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
7981
在线时间
1183 小时
注册时间
2007-7-29
帖子
2055
3
发表于 2011-5-12 10:05:54 | 只看该作者
  1. module PhoneNumber
  2.   def self.reg(num)
  3.     num = num.to_s
  4.     if num.size != 11
  5.       p "请输入11位数电话号码"
  6.     else
  7.       valid = /([1][35]\d\d\d\d\d\d\d\d)/
  8.       if valid =~ num
  9.         p "匹配成功"
  10.       else
  11.         p "匹配失败"
  12.       end
  13.     end
  14.   end
  15. end

  16. PhoneNumber::reg("13567854251") # ==> 匹配成功
  17. PhoneNumber::reg("13567A54251") # ==> 匹配失败
复制代码
经测试后没发现此问题……==''
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
169 小时
注册时间
2011-1-5
帖子
92
4
 楼主| 发表于 2011-5-13 09:02:42 | 只看该作者

null

上面的我试过了,还是匹配失败,-_-||郁闷中…
回复 支持 反对

使用道具 举报

Lv3.寻梦者

孤独守望

梦石
0
星屑
3132
在线时间
1535 小时
注册时间
2006-10-16
帖子
4321

开拓者贵宾

5
发表于 2011-5-13 21:32:00 | 只看该作者
我只是来说一句正则是不接受通配符的,如果小lim那个还挂只能说是数据有问题XD
菩提本非树,明镜本非台。回头自望路漫漫。不求姻缘,但求再见。
本来无一物,何处惹尘埃。风打浪吹雨不来。荒庭遍野,扶摇难接。
不知道多久更新一次的博客
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-11-25 22:28

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表