Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
正则表达式(javascript),调试器,正则表达式101_Javascript_Regex - Fatal编程技术网

正则表达式(javascript),调试器,正则表达式101

正则表达式(javascript),调试器,正则表达式101,javascript,regex,Javascript,Regex,我试图理解调试器的行为,这是最基本的,因此,如果激活调试器并从第45行查看,您可以看到以下行为: 第45行引擎正在观察$符号,并了解字符串的结尾尚未到达,因此需要减去字符串 我的问题是行(46,48,50,52,54),我试图理解为什么引擎是从子模式(第46行)中的$符号(第45行)开始的,当引擎是在$符号上进行实际减法时,我认为46,48,50,52,54是浪费的行,我无法理解它们的贡献,我的意思是,当引擎在$符号上运行时发生更改时,我为什么要进入子模式,以检查字符串是否结束 如果有人能帮我,

我试图理解调试器的行为,这是最基本的,因此,如果激活调试器并从第45行查看,您可以看到以下行为:

  • 第45行引擎正在观察$符号,并了解字符串的结尾尚未到达,因此需要减去字符串
  • 我的问题是行(46,48,50,52,54),我试图理解为什么引擎是从子模式(第46行)中的$符号(第45行)开始的,当引擎是在$符号上进行实际减法时,我认为46,48,50,52,54是浪费的行,我无法理解它们的贡献,我的意思是,当引擎在$符号上运行时发生更改时,我为什么要进入子模式,以检查字符串是否结束
  • 如果有人能帮我,我将非常感激

    更新:

    正则表达式:

    <\/span>((?:(?!<\/span>)[\s\S])+)$
    
    ((?:(?!)[\s\s])+)$
    
    字符串:

    string</span>string</span>string</span>theStringIWant
    
    stringthestringiwant
    
    应该可以。您在该网站上使用过原始正则表达式吗?
    不应选择任何选项,即:无多行或全局或任何选项

     #  Delimited:      /<\/span>((?:(?!<\/span>)[\s\S])+)$/
     #  Raw:             </span>((?:(?!</span>)[\s\S])+)$   
    
     </span>
     (
          (?:
               (?! </span> )
               [\s\S] 
          )+
     )
     $ 
    

    我看不到我过时的浏览器的链接。你能发布regex而不是让人不得不与一个淫秽的东西抗争吗?我在regex101调试器中看到了一些奇怪的行为,我认为这个调试器有缺陷,最好用regexbuddy进行测试。regexbuddy有免费版本吗?或者类似的软件是免费的吗?@CasimiritHippolyte:我的调试器有什么问题吗?它做的正是它应该做的。Aviel提到的线是引擎为继续比赛确定位置的线。您在regex101上看到的结果是100%准确的。感谢Lindrian的评论。
    if ( "string</span>string</span>string</span>theStrngIWant" =~ /<\/span>((?:(?!<\/span>)[\s\S])+)$/)
    {
        print "found: '$1'\n";
    }
    
    found: 'theStrngIWant'