佳礼资讯网

 找回密码
 注册

ADVERTISEMENT

查看: 740|回复: 6

求救!有关regular expression的问题

[复制链接]
发表于 28-2-2007 01:05 AM | 显示全部楼层 |阅读模式
如果我定义某个value的取值范围是 [0-9]{5}(-[0-9]{4})?
那么那个value的range是多少?
我搞糊涂了! 被圆括号里的值给弄糊涂了! 有哪位大侠肯指点我及告诉我吗? 

[ 本帖最后由 takiz 于 28-2-2007 01:07 AM 编辑 ]
回复

使用道具 举报


ADVERTISEMENT

发表于 1-3-2007 05:19 PM | 显示全部楼层
应该是 - 前5个;- 后四个。
不确定,呵呵。
回复

使用道具 举报

发表于 1-3-2007 08:33 PM | 显示全部楼层
如果是这样的话 [0-9]{5}(-[0-9]{4})
是说前面应该any number with minimum 5个,然后followed by 一个 - ,然后any number with minimum 4个

你的问题 [0-9]{5}(-[0-9]{4})?
后面的问号是说明括号内的condition是可有可没有(optional),如果可有就必须遵从 followed by 一个 - ,然后any number with minimum 4个

我用php testing,可是和我的解释有出入,呵呵,还须请高手解释
回复

使用道具 举报

发表于 1-3-2007 10:12 PM | 显示全部楼层
原帖由 ikanyuchiew 于 1-3-2007 08:33 PM 发表
如果是这样的话 {5}(-{4})
是说前面应该any number with minimum 5个,然后followed by 一个 - ,然后any number with minimum 4个

你的问题 [0-9]{5}(-[0-9]{4})?
后面的问号是说明括号内的condition是可有可没有(optional),如果可有就必须遵从 followed by 一个 - ,然后any number with minimum 4个


{n}表示連續n個前面的字元
{n,}表示連續n個以上前面的字元
{n,m}表示連續n到m個前面的字元

?表示0或1個前面的字元

所以 [0-9]{5}(-[0-9]{4})? 可以表示為
數字 數字 數字 數字 數字

數字 數字 數字 數字 數字 - 數字 數字 數字 數字
回复

使用道具 举报

发表于 2-3-2007 05:26 AM | 显示全部楼层
哦,原来如此,thanks
回复

使用道具 举报

发表于 2-3-2007 05:26 AM | 显示全部楼层
哦,原来如此,thanks
回复

使用道具 举报

Follow Us
 楼主| 发表于 2-3-2007 03:15 PM | 显示全部楼层
谢谢,这么多位的热情帮助
其实我也大概懂了, 只是有点不解,为何写成那样,
要多出一个[0-9]{5}-[0-9]{4},看起来毫无意义,按照一般理解[0-9]{5}其实已能得到测试结果的答案了,em....唉,还是不要想太多吧,可能是example有错吧,呵呵,还是自己水平不够吧.
本文是学xml schema时碰上的,但是其他地方应该也有机会碰到正则表达式(regular expression),共大家参考参考!
回复

使用道具 举报

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

本版积分规则

 

ADVERTISEMENT


本周最热论坛帖子本周最热论坛帖子

ADVERTISEMENT



ADVERTISEMENT

ADVERTISEMENT


版权所有 © 1996-2023 Cari Internet Sdn Bhd (483575-W)|IPSERVERONE 提供云主机|广告刊登|关于我们|私隐权|免控|投诉|联络|脸书|佳礼资讯网

GMT+8, 27-8-2025 10:40 AM , Processed in 0.324786 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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