如何在 Javascript 中执行此正则表达式
How can I execute this regex in Javascript?
我习惯于在PHP
中使用Regex
,但在Javascript
中并没有真正使用它;我环顾四周,但除了一堆我不需要的正则表达式语法教程之外,真的找不到答案。
例如,我想执行以下操作,但使用正则表达式:
if (location != '/group_breaks.php' && location != '/group_breaks' && location != '/group_breaks/') {
}
我的正则表达式是:/^'/group_breaks('.php|'/)?$/
所以我可以做PHP
我能做的:
if (!preg_match('/^'/group_breaks('.php|'/)?$/', $location)) {
}
Javascript中的替代方案是什么?
您可以使用
返回一个布尔值的RegExp.test
,该布尔值告诉字符串是否匹配。
var yourStringHere = "This is a string";
if(/^'/group_breaks('.php|'/)$/.test(yourStringHere)){
// valid
}
在 Javascript 中,您可以使用:
if ( /^'/group_breaks('.php|'/)?$/.test(location)) {
}
请记住('.php|'/)?
部分设置为可选,以便它与/group_breaks
或/group_breaks/
或/group_breaks.php
匹配
把你的正则表达式放在一个消极的展望中。
/^(?!'/group_breaks('.php|'/)?$)/gm
例:
> /^(?!'/group_breaks('.php|'/)?$)/.test("/group_breaks.php")
false
> /^(?!'/group_breaks('.php|'/)?$)/.test("/group_breaks/")
false
> /^(?!'/group_breaks('.php|'/)?$)/.test("/group_breaks")
false
> /^(?!'/group_breaks('.php|'/)?$)/.test("/group")
true
相关文章:
- java.net和javascript之间正则表达式的差异
- Grunt匹配正则表达式
- 不同浏览器中的空白字符正则表达式行为
- 为什么这个正则表达式需要这么长时间才能执行
- 突出显示与perl正则表达式匹配的HTML部分 - 在服务器端perl或客户端javascript中执行此操作
- 正则表达式回调函数只执行一次
- Chrome 在执行正则表达式匹配时崩溃
- 如何在 Javascript 中执行此正则表达式
- 我该如何在JavaScript数组中执行正则表达式查找uof值
- jQuery:如果内容与正则表达式模式匹配,则执行此功能
- 为什么Node在脚本中执行与repl不同的正则表达式匹配?
- 如何使用正则表达式匹配字符串中的单词,并在每次匹配上执行特定任务
- 是否有更好和/或更快的方法来执行这个正则表达式
- 解析JavaScript中的变量并对其执行正则表达式
- 执行与正则表达式拆分相反的操作
- 为什么这个正则表达式执行缓慢
- JS在一定时间内执行正则表达式
- 如果给定要测试的长字符串,则Javascript引擎在执行此正则表达式时失败
- Javascript:正则表达式代码不会执行
- 正则表达式:使用交替运算符组合模式或多次执行正则表达式