正则匹配。

yhhn_dragon 2012-05-02 01:30:33
我就想知道那个正则怎么错的 0 0。
有知道怎么改的么。
(?<=auto/)[^/]+ 这个 我自己写的工具上可以匹配为什么用js写就是错的
匹配 **
字符串是:
http://www.xxxx/auto/**
http://www.xxxx/auto/**/
http://www.xxxx/auto/**/index.html

我相匹配** 怎么匹配
...全文
113 10 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
三石-gary 2012-05-02
  • 打赏
  • 举报
回复
<script>
var a = 'http://www.xxxx/auto/**/index.html';
var pattern = /auto\/([^/]+)/;
alert(pattern.exec(a)[1]);

</script>
这样?
001007009 2012-05-02
  • 打赏
  • 举报
回复

var s = 'http://www.xxxx/auto/1\
http://www.xxxx/auto/2/\
http://www.xxxx/auto/3/index.html';
var re = /.+?auto\/([^\/])+?(\/)?/ig;
s.replace(re, function($){
re.test($);
re.lastIndex = 1;
alert( RegExp.$1 )
})



楼主 这个意思?
EnForGrass 2012-05-02
  • 打赏
  • 举报
回复
/auto/([^/]+)/
取第1个分组$1即可
Mr-Jee 2012-05-02
  • 打赏
  • 举报
回复
auto/([^/]+)
取分组1
Mr-Jee 2012-05-02
  • 打赏
  • 举报
回复
额 取分组吧。
yhhn_dragon 2012-05-02
  • 打赏
  • 举报
回复
谢谢你 长知识了。[Quote=引用 2 楼 的回复:]
js中不支持逆序环视的语法,也就是
(?<=expression)
(?<!expression)
这两种是不支持的
java虽然支持,但是expression中不能出现不定长度的量词,如*、+等等
.NET中是都支持的

js中支持顺序环视
(?=expression)
(?!expression)
[/Quote]
yhhn_dragon 2012-05-02
  • 打赏
  • 举报
回复
那 这个正则应该怎样改呢。有知道的么。
EnForGrass 2012-05-02
  • 打赏
  • 举报
回复

js中不支持逆序环视的语法,也就是
(?<=expression)
(?<!expression)
这两种是不支持的
java虽然支持,但是expression中不能出现不定长度的量词,如*、+等等
.NET中是都支持的

js中支持顺序环视
(?=expression)
(?!expression)


三石-gary 2012-05-02
  • 打赏
  • 举报
回复
js里面好像不支持?<=

87,996

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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