【问题标题】:Scala Regex Unclosed character errorScala正则表达式未闭合字符错误
【发布时间】:2015-01-13 13:34:17
【问题描述】:

我正在尝试定义这个正则表达式来检测我的 xml 文件中的标签

我写了以下代码:

val regex = """<!DOCTYPE[^>[]*(\[[^]]*\])?>""".r

但它给了我以下错误

Exception in thread "main" java.util.regex.PatternSyntaxException: Unclosed character class near index 27
<!DOCTYPE[^>[]*(\[[^]]*\])?>
                           ^

我做错了什么?

【问题讨论】:

    标签: regex scala


    【解决方案1】:
    <!DOCTYPE[^>[]*(\[[^]]*\])?>
                ↑       ↑   
    

    您应该转义集合内的][

    <!DOCTYPE[^>\[]*(\[[^\]]*\])?>
    

    【讨论】:

      【解决方案2】:

      转义字符类中的][

      val regex = """<!DOCTYPE[^>\[]*(\[[^\]]*\])?>""".r
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-01-01
        • 2017-12-05
        • 2016-04-30
        • 1970-01-01
        • 2019-05-01
        • 2018-02-23
        相关资源
        最近更新 更多