`

RegExp.exec遇到的问题

 
阅读更多

 

const _reg:RegExp = new RegExp("/cgi-bin/.*?g_tk=","g");

var url:String = "http://card.show.qq.com/cgi-bin/card_badge_info?g_tk=963795748";

 

var cgi:String = _reg.exec(url);//getCgi(url);

trace("cgi1"+cgi);

 

var url2:String = "http://card.show.qq.com/cgi-bin/card_badge_info?g_tk=963795748";

var cgi2:String = _reg.exec(url2);//getCgi(url);

trace("cgi2"+cgi2);


cgi1   /cgi-bin/card_badge_info?g_tk=
cgi2   null

解决方案:
1:正则不用g
2: 初始化正则的lastIndex
分享到:
评论

相关推荐

    关于IE的RegExp.exec的问题

    在这个过程中,同样遇到了IE浏览器中exec方法的lastIndex不更新导致的问题。在使用exec方法进行全局匹配时,现代浏览器会根据匹配的位置更新正则表达式的lastIndex属性,以便下次调用exec时能从上次匹配结束的位置...

    RegExp_lastParen.rar_in

    在JavaScript的版本更新中,每次都会带来新的特性和改进,以增强其功能和性能。针对“JavaScript 1.2”这个版本,虽然...在实际工作中,如果遇到类似的问题,查阅相关文档、测试代码和实践操作是理解新特性的最好方式。

    正则表达式测试工具(HTA格式)

    如果你遇到问题,比如窗口大小不合适,可以通过打开源代码(通常右键点击窗口并选择“查看源代码”)并删除提及的`window.resizeto`一行来解决。 总之,"regexp.hta"是一个实用的正则表达式测试工具,对于开发人员...

    正则表达式

    m (多行查找) vaScript动态正则表达式问题 请问正则表达式可以动态生成吗? 例如JavaScript中: var str = "strTemp"; 要生成: var re = /strTemp/; 如果是字符连接: var re = "/" + str + "/"即可 但是要...

    Primefaces 3.0.x Upgrade 注意事項1

    - 在Primefaces 3.0及3.0.1版本中,使用IE9时,`p:fileupload`组件的`update`属性可能会遇到问题。问题ID为3292,可以通过Primefaces论坛中的工作-around解决。具体做法是在文件上传后添加一个JavaScript函数`...

    调试JavaScript中正则表达式中遇到的问题

    在遇到类似问题时,检查正则表达式是否使用了全局标志`g`,以及`lastIndex`属性的状态,这通常可以帮助定位问题所在。同时,深入理解正则表达式的模式匹配规则和特殊字符的含义也是避免调试陷阱的关键。

    JavaScript正则表达式exec/g实现多次循环用法示例

    在JavaScript中,正则表达式用于进行模式匹配和文本处理,而exec方法和全局修饰符g是处理这类问题时经常使用的工具。 exec方法是RegExp对象的一个方法,它执行一个正则表达式匹配,并返回匹配结果。如果正则表达式...

    用正则提取全部的匹配结果的代码

    在编程实践中,处理正则表达式时经常会遇到的一个问题是正则表达式本身的错误,如表达式不匹配预期的文本,或者匹配错误的模式。这要求程序员对正则表达式的语法有非常清晰的理解,包括元字符(如`*`、`+`、`?`、`[]...

    js正则表达式replace替换变量方法

    在进行开发时,经常会遇到需要对字符串中的特定格式或变量进行查找并替换的场景,此时可以使用正则表达式配合replace方法来实现。本文将详细探讨JavaScript中利用正则表达式和replace方法来替换字符串变量的多种方法...

    如何用正则取input type=text中的value

    在JavaScript中,可以使用`String.prototype.match()`或`RegExp.prototype.exec()`方法来应用正则表达式。以下是一个示例,演示如何提取文本框的`value`值并过滤掉`checkbox`: ```javascript const ...

    CISCO 技术大集合

    exec-timeout 0 0 ! line vty 0 4 end   六、配置静态路由 通过配置静态路由,用户可以人为地指定对某一网络访问时所要经过的路径,在网络结构比较简单,且一般到达某一网络所经过的路径唯一的情况下采用静态...

    js正则表达exec与match的区别说明

    最近开发遇到一些需要使用正则表达式,顺便研究一下 正则表达式对象有两个定义方式:: 1、第一种定义: new RegExp(pattern, attributes);如var reg = new RegExp(“abc”,”g”) 其中pattern为表示表达式内容,...

    tcl 快速 入门

    《TCL快速入门指南》 TCL(Tool Command Language)是一种强大的脚本语言,由John Ousterhout在1988年开发。...同时,不断探索TCL的社区资源,如文档、教程和论坛,可以帮助解决遇到的问题,进一步提升你的TCL技能。

    javascript简写常用的12个技巧(可以大大减少你的js代码量).docx

    在JavaScript编程中,经常会遇到需要验证一个变量是否为`null`或`undefined`的情况。传统的做法可能会显得较为冗长: ```javascript if (variable1 !== null && variable1 !== undefined && variable1 !== '') { ...

    关于js正则表达式学习笔记(自己整理的)

    JavaScript中的正则表达式是处理字符串的强大工具,用于匹配、替换、分割文本。...记得,JavaScript中的正则表达式是强大的,但也可能复杂,所以多做练习,遇到问题不要害怕,慢慢来,你一定能在编程的道路上更进一步。

    js代码-获取 url 中的参数 1. 指定参数名称,返回该参数的值 或者 空字符串 2. 不指定参数名称,返回全部的参数对象 或者 {} 3. 如果存在多个同名参数,则返回数组

    var regex = new RegExp('[?&]' + name + '(=([^&#]*)|&|#|$)'), results = regex.exec(url); if (!results) return null; if (!results[2]) return ''; return decodeURIComponent(results[2].replace(/\+/g, ...

Global site tag (gtag.js) - Google Analytics