Chrome 是否正确处理匹配?

发布于 2024-12-15 08:22:57 字数 668 浏览 2 评论 0原文

我的理解是,可以使用两种方法之一在 JavaScript 中进行不区分大小写的基于正则表达式的匹配: match(/pattern/i)match("pattern","i")。不过,我没有让第二种变体在 Chrome 中工作。 (我使用的是 Chromium 14.0.835.202)。这是 Chrome 中的错误吗? (或者用户错误?)

在 Firefox 中,当我运行此代码时,我得到:Hello World,然后是 Hello World。在 Chrome 中,我得到 Hello World,未定义。

<html>
<head>
</head>
<body>

<input type="button" id="button" value="Click me!" onclick="buttonClick()" />

</body>

<script language="javascript">
function buttonClick()
{
  str="Hello World"
  alert(str.match(/hello world/i))
  alert(str.match("hello world","i"))
}
</script>
</html>

My understanding is that one can use either of the two methods for case-insensitive regex based matches in JavaScript: match(/pattern/i) or match("pattern","i"). I'm not getting the second variation to work in Chrome though. (I'm using Chromium 14.0.835.202). Is this a bug in Chrome? (or a user error?)

In Firefox when I run this code I get: Hello World and then Hello World. In Chrome I get Hello World, undefined.

<html>
<head>
</head>
<body>

<input type="button" id="button" value="Click me!" onclick="buttonClick()" />

</body>

<script language="javascript">
function buttonClick()
{
  str="Hello World"
  alert(str.match(/hello world/i))
  alert(str.match("hello world","i"))
}
</script>
</html>

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

哭了丶谁疼 2024-12-22 08:22:58

不,这不是一个错误。 Firefox 允许在 String.match 中使用 flags 参数,但正如 Mozilla 文档中所述(或者更确切地说,正如它曾经注意到 - 此功能甚至不再提及)它是非标准的,并且应该避免。而且,它通常效率较低。

如果您需要此功能,请改用new RegExp

No, it's not a bug. Firefox allows the use of the flags parameter in String.match, but as noted on the Mozilla Documentation (or rather, as it used to be noted - this functionality is no longer even mentioned) it's nonstandard and should be avoided. Also, it's usually less efficient.

If you need this functionality, use new RegExp instead.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文