javascript - 需要更好的正则表达式来匹配文本

标签 javascript regex performance

我的要求是找到方法被调用者的错误使用模式,因为我想要一个正则表达式来找到无效的用例。

例如:我有一个方法,它将接受具有预定义格式的参数。

可能的预定义输入参数:

  1. abc
  2. 英国广播公司
  3. abc 英国广播公司
  4. 德尔
  5. der abc

函数:函数方法(参数){}

有效的函数被调用者用例:

  1. object.method("abc"); object.method('abc');
  2. object.method("bbc"); object.method('bbc');
  3. object.method("abc bbc"); object.method('abc bbc');
  4. object.method("der"); object.method('der');
  5. object.method("der abc"); object.method('der abc');

无效用例:

  1. object.method("abcd");
  2. object.method("测试");
  3. object.method("abc");
  4. object.method("abc bbc ");

为了识别无效用例,我使用了以下正则表达式: 引用:[正则表达式] ( https://regex101.com/r/fR5eF4/3 )

是否可以进一步优化上述正则表达式(或)任何其他性能更好的表达式。

最佳答案

我来了

.(method)\s*\((?![\"\'](abc|bbc|abc bbc|der|der abc)[\"\'])

所以我刚刚将 ' 和 "从这个 (x|x|x) 组中移出,以使事情更清楚
另外 - 您可以添加/g 修饰符进行测试并将所有数据放入文本框中。
这是链接:https://regex101.com/r/oT4nN3/1

关于javascript - 需要更好的正则表达式来匹配文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28959928/

相关文章:

javascript - for...in 循环和原型(prototype)链

javascript - 检查函数是否使用 if 语句

javascript - 使用移动设备上的按钮打开和关闭用户可扩展性

javascript - Node.js Promise 与 Mongoose

具有不同匹配和替换条件的 Java String.replaceAll

javascript - ExpressJS - 用于匹配路径的正则表达式不起作用

regex - 如何匹配问号?

python - Pandas dataframe groupby + apply + new column 很慢

MySQL:使用 INNER JOIN 的慢 GROUP BY

c# - 使用 GPU 加速 BigInteger 计算