代码之家  ›  专栏  ›  技术社区  ›  Kumsal Obuz

在Actionscript中,如何在不定式结构中匹配/比如划掉/划掉?

  •  2
  • Kumsal Obuz  · 技术社区  · 14 年前

    我用下面的正则表达式来寻找不定式中的精确出现。标志是全局的。

    (?!to )(?<!\w) (' + word_to_search + ') (?!\w)
    

    举个例子来说明我想要达到的目标

    • 找不应该带:给等只是因为它匹配第一个给

    我已经完成了这些步骤,但是,划掉/划掉应该也在结果列表中。有没有什么方法可以创建一个例外而不损害我所取得的成就?

    2 回复  |  直到 14 年前
        1
  •  1
  •   Alan Moore Chris Ballance    14 年前

    我还是不太明白这个问题。你想要匹配一个看起来像不定式动词短语并且包含整个单词的东西 word_to_search

    "\\bto\\s(?:\\w+[\\s/])*" + word_to_search + "\\b"
    

    请记住,当您以字符串文字的形式创建正则表达式时,必须转义反斜杠。如果试图使用“\b”指定单词边界,则会将其解释为退格。

        2
  •  0
  •   Kumsal Obuz    14 年前

    我知道或操作员,但问题是如何组织结构,以便它可以向前看和向后看。我要解释一下到目前为止我做了什么

    var strPattern:String = '(?!to )(?<!\w) (' + word_to_search + ') (?!\w)|';
    strPattern+='(?!to )(?<!\w) (' + word_to_search + '\/)|';
    strPattern+='(?!to )(\/' + word_to_search + ')';
    var pattern:RegExp = new RegExp(strPattern, "g");
    

    在我的问题中,第一行是同一行,它搜索类似于纾困的结构,以查找您键入的情况。第二行用于匹配结构,比如划掉/划掉。但是如果这个词是off,我们需要其他匹配的东西来删除/off。所以,第三行加上额外的条件。