繁体   English   中英

问题 - 如何在 Puppeteer 中通过“RegExp Object??

[英]Question - How do I pass "RegExp Object ?? in Puppeteer

关于 page.evaluate 方法...

我想使用“替换”方法。 但我不能传递 RegExp 对象....

例子)

const result = await page.evaluate(x => {
return Promise.resolve(8 * x);
}, 7);
console.log(result); // prints "56" <=SUCCESS!!

const result = await page.evaluate(x => {
const a = "apple"
return Promise.resolve(a.replace(x, "banana"));
}, "apple");
console.log(result); // prints "banana" <=SUCCESS!!

const result = await page.evaluate(x => {
const a = "apple"
return Promise.resolve(a.replace(x, "banana"));
}, /apple/);
console.log(result); // prints "apple" <= failure...

谢谢!

您可以使用RegExp()从源代码重新创建:

const result = await page.evaluate((pattern, flags) => {
  const x = RegExp(pattern, flags);
  const a = "apple";
  return Promise.resolve(a.replace(x, "banana"));
}, 'apple', 'i' );
console.log(result);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM