我有以下代码:
var requestData = {};
var byPattern = /by=(\w+)/;
var value = byPattern.exec(stringToSearch);
if (value && value.length === 2)
requestData.by = value[1];
Run Code Online (Sandbox Code Playgroud)
这个正则表达式的第一个问题是,如果stringToSearch是例如"standby = foo",它匹配并返回"foo".我希望它在那里失败.我希望正则表达式只有在"by"或空格之前没有任何内容时才能匹配.
所以我换成了 /^\s*by=(\w+)/
那更好,但我希望正则表达式匹配stringToSearch,例如"city = paris by = foo".它应匹配并返回"foo".不是这里的情况:/
有人可以帮我修复正则表达式吗?非常感谢!
神奇的词是\b:
var byPattern = /\bby=(\w+)/;
console.log(byPattern.exec("by=3"));
console.log(byPattern.exec(" by=3"));
console.log(byPattern.exec("standby=3"));
Run Code Online (Sandbox Code Playgroud)
只有前两个匹配,这是(我认为)你想要的.
| 归档时间: |
|
| 查看次数: |
608 次 |
| 最近记录: |