JavaScript正则表达式帮助:匹配0或1次,但不捕获
JavaScript Regular Expression Help: Match 0 or 1 times but do not capture
我只需要返回URL中#和第一个"/"之间的部分。有时URL可能没有一个进程"/"。我正在RegEx:中努力应对这种情况
var url1 = '#some';
var url2 = '#some/parameter';
var hash = /#(.*)'//.exec(url1);
alert(hash[1]); // only want 'some'
var hash = /#(.*)'//.exec(url2);
alert(hash[1]); / only want 'some'
使用[^/]
匹配任何不是/
:的字符
var hash = /^#([^/]+)/.exec(url2)[1];
通常,如果您想为一个量词对一个子表达式进行分组,但又不想捕获它,则可以在该子表达式前面加上?:
,比如:(?:.*)
。
但是,使用上面的regex,您确实希望捕获([^']*)
。
您可以使用
var hash = yourString.match(/#([^/]+)/)[1];
相关文章:
- 需要帮助设置json数组
- JQuery需要帮助理解(i,el)
- Javascript返回值只在循环中返回一次
- Jquery FadeIn FadeOut 只工作一次
- 使用javascript检查多个输入值,并在1次检查中标记多个输入框
- 如何在输入字段中的按钮的帮助下打开日历,该字段的类型为“=”;日期”;
- Javascript html每点击一次就会更改url
- /undefined在我的404错误日志中多次出现
- 需要帮助谷歌地图方向面板在FancyBox中显示
- 如何在chrome扩展中存储数据/结果,以及如何使用setTimeout使其只被调用一次
- 我需要为我的朋友在这个项目上提供帮助
- 有人可以帮助我调试带有addClass和removeClass函数的“每个会话一次”cookie吗?
- jQuery Accordian - 帮助一次只打开一个顶级选项卡.单击一个选项卡打开其他选项卡时,将关闭
- JavaScript正则表达式帮助:匹配0或1次,但不捕获
- 第一次需要javascript帮助
- jQueryClick事件只工作一次(以前的StackOverflow回答都没有帮助)
- 帮助形成一个三次缓和方程
- 第二次显示的时间问题.的帮助
- 为什么n't事件第二次触发(delegateEvents没有帮助)
- 需要会话脚本的帮助,只显示JQModal弹出窗口一次