系统安装、升级讨论
版面规则
我们都知道新人的确很菜,也喜欢抱怨,并且带有浓厚的Windows习惯,但既然在这里询问,我们就应该有责任帮助他们解决问题,而不是直接泼冷水、简单的否定或发表对解决问题没有任何帮助的帖子。乐于分享,以人为本,这正是Ubuntu的精神所在。
-
jerry_zhou
- 帖子: 52
- 注册时间: 2008-07-27 11:36
-
联系:
#17
帖子
由 jerry_zhou » 2008-08-05 18:02
kofshower
对, 带有参数就不合法, 这是我的要求.
不能让输入的URL带参数.
-
kofshower
- 帖子: 1343
- 注册时间: 2007-03-13 11:23
-
联系:
#18
帖子
由 kofshower » 2008-08-05 18:21
代码: 全选
^([-\d\w]+[.:])+[-\w]+/*[- ./%\w]*$
前面没看是验证合法性,我随手写的脚本写成从中trait出所需要的部分来了
-
wesin
- 帖子: 4
- 注册时间: 2007-06-19 11:05
#20
帖子
由 wesin » 2008-08-06 9:49
代码: 全选
^([^:/]+\.)?([\w]+)((\.[\w]{2,4}$)|(\.[\w]{2,4}\/[^?]+))
-
wesin
- 帖子: 4
- 注册时间: 2007-06-19 11:05
#22
帖子
由 wesin » 2008-08-06 10:02
怎么我试了可以呢,你把那:/?前面加个\看看呢
-
jerry_zhou
- 帖子: 52
- 注册时间: 2008-07-27 11:36
-
联系:
#23
帖子
由 jerry_zhou » 2008-08-06 10:21
wesin
可能你理解我的意思错了.
我的意思是要验证这个URL是不是合法, 首先要合法, 在合法的基础上 如果说这个URL还带有协议和参数的话,那也算是错的了.
-
jarlyyn
- 帖子: 4671
- 注册时间: 2006-04-12 18:54
-
联系:
#24
帖子
由 jarlyyn » 2008-08-06 10:27
代码: 全选
([^?*/\^<>"'@!]+\.)*[^?*/\^<>"'@!]+\.[^?*/\^<>"'@!]+(/[^?*/\^<>"'@!]+)*?(/([^?^*/\<>"'@!]*))?
网址中对应都可以抓出来
-
wesin
- 帖子: 4
- 注册时间: 2007-06-19 11:05
#26
帖子
由 wesin » 2008-08-06 11:02
你是用什么检测的。。
-
jarlyyn
- 帖子: 4671
- 注册时间: 2006-04-12 18:54
-
联系:
#27
帖子
由 jarlyyn » 2008-08-06 11:04
jerry_zhou 写了:jarlyyn
你的这个正则表达式都不能经过检测
有些检测的,比如kregexp
不能检测出*?是什么东西
代码: 全选
([^?*/\^<>"'@!]+\.)*[^?*/\^<>"'@!]+\.[^?*/\^<>"'@!]+(/[^?*/\^<>"'@!]+)*(/([^?^*/\<>"'@!]*))?
你检测这个就可以了
本来那个里有个*?是为了正确的抓网址内容用的,懒惰匹配
-
jerry_zhou
- 帖子: 52
- 注册时间: 2008-07-27 11:36
-
联系:
#28
帖子
由 jerry_zhou » 2008-08-06 14:10
wesin
我用JS来检测的
代码如下
function validationURL(str) {
var strReg = '([^?*/\^<>"'@!]+\.)*[^?*/\^<>"'@!]+\.[^?*/\^<>"'@!]+(/[^?*/\^<>"'@!]+)*?(/([^?^*/\<>"'@!]*))?';
var re=new RegExp(strReg);
if (re.test(str)) {
alert("true");
} else {
alert("false");
}
}
在这中间,JS会认为你的表达式有错误.
-
kofshower
- 帖子: 1343
- 注册时间: 2007-03-13 11:23
-
联系:
#29
帖子
由 kofshower » 2008-08-06 14:15
你的要求我是测试过的(使用语言ruby),这几个样本有什么不妥么,还是js的正则式有什么不同,我有几年没用js了
-
附件
-
-
jerry_zhou
- 帖子: 52
- 注册时间: 2008-07-27 11:36
-
联系:
#30
帖子
由 jerry_zhou » 2008-08-06 14:20
kofshower
能把你的结果告诉我吗?
按照你图片显示的顺序,和我的需求
结果应该是 :
true
true
true
true
true
false
false
false