首页 > web前端 > js教程 > 为什么我的 JavaScript 正则表达式在匹配点时返回 Null?

为什么我的 JavaScript 正则表达式在匹配点时返回 Null?

Patricia Arquette
发布: 2024-12-09 14:55:12
原创
756 人浏览过

Why Is My JavaScript Regex Returning Null When Matching Points?

为什么 JavaScript 正则表达式不起作用

问题:

您遇到尝试将 JavaScript 中的点列表与常规匹配时出现空结果表达式。

正则表达式:

var reg = new RegExp("/\(\s*([0-9.-]+)\s*,\s([0-9.-]+)\s*\)/g");
登录后复制

解决方案:

  • 使用正则表达式字面值:
var reg = /\(\s*([0-9.-]+)\s*,\s([0-9.-]+)\s*\)/g;
登录后复制
  • 使用正则表达式时出错:

    • 分隔符 (/) 不应成为组成部分表达式的。
    • 如果表达式是,则应转义反斜杠定义为字符串。
    • 修饰符应作为第二个参数传递给函数。

注意:

虽然使用 RegExp 是一种选择,但使用 regex 通常更方便文字。

提取值:

  • .match() 返回一个字符串数组,这可能没有用。
  • .exec ()可以用来连续提取数字,直到整个字符串被提取出来processed:
var result, points = [];
while((result = reg.exec(polygons)) !== null) {
    points.push([+result[1], +result[2]]);
}
登录后复制

这将创建一个包含提取数字的数组数组。一元加号 ( ) 将字符串转换为数字。

以上是为什么我的 JavaScript 正则表达式在匹配点时返回 Null?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板