【问题标题】:Regex error on Visual studio?Visual Studio 上的正则表达式错误?
【发布时间】:2013-07-31 14:38:01
【问题描述】:

我正在使用来自 RFC-3986 的这个 url 正则表达式

它写成here

^(([^:/?#]+):)?(//([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?

它对我有用here

但是当我在 Visual Studio 下添加它时,我看到了这个:

chrome 开发者工具栏向我展示了这个:

我做错了什么?

附注我认为可能有隐藏的字符 - 所以我粘贴到 CMD 然后重新复制它,但仍然....

【问题讨论】:

    标签: javascript regex visual-studio-2010


    【解决方案1】:

    将所有出现的/ 转义为\/。那么VS就不会抱怨了。

    var basicRegexPatterns = {
        urlPattern: /^(([^:\/?#]+):)?(\/\/([^\/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/i
    };
    

    Escaping a forward slash in a regular expression

    【讨论】:

    • 那些逃避问题会杀了我.....我在哪里可以找到所有(!)应该转义的字符(js)?这个答案并不表示/stackoverflow.com/questions/399078/…
    • @RoyiNamir,这个答案是处理正则表达式本身。您问题中的/ 是正则表达式文字分隔符(例如" / ' 用于字符串文字)。
    • 哦-您是说中间/ 被视为新的正则表达式......?但是我发现答案stackoverflow.com/a/17326679/859154 显示了我所问的mdn sais。谢谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多