【问题标题】:Javascript to find if string terminates in a forward slashJavascript查找字符串是否以正斜杠终止
【发布时间】:2013-01-24 11:17:41
【问题描述】:

如果我将字符串加载到变量中,确定字符串是否以“/”正斜杠结尾的合适方法是什么?

var myString = jQuery("#myAnchorElement").attr("href");

【问题讨论】:

标签: javascript jquery string


【解决方案1】:

使用regex 并执行以下操作:

myString.match(/\/$/)

【讨论】:

    【解决方案2】:

    一个简单的解决方案是通过以下方式检查最后一个字符:

    var endsInForwardSlash = myString[myString.length - 1] === "/";
    

    编辑:请记住,您需要先检查字符串是否为空,以免引发异常。

    【讨论】:

      【解决方案3】:

      你可以使用 substring 和 lastIndexOf:

      var value = url.substring(url.lastIndexOf('/') + 1);
      

      【讨论】:

        【解决方案4】:

        一个正则表达式有效,但如果你想避免整个神秘的语法,这里应该有效:javascript/jquery add trailing slash to url (if not present)

        var lastChar = url.substr(-1); // Selects the last character
        if (lastChar !== '/') {         // If the last character is not a slash
           ...
        }
        

        【讨论】:

          【解决方案5】:

          你不需要 JQuery。

          function endsWith(s,c){
              if(typeof s === "undefined") return false;
              if(typeof c === "undefined") return false;
          
              if(c.length === 0) return true;
              if(s.length === 0) return false;
              return (s.slice(-1) === c);
          }
          
          endsWith('test','/'); //false
          endsWith('test',''); // true
          endsWith('test/','/'); //true
          

          你也可以写一个原型

          String.prototype.endsWith = function(pattern) {
              if(typeof pattern === "undefined") return false;
              if(pattern.length === 0) return true;
              if(this.length === 0) return false;
              return (this.slice(-1) === pattern);
          };
          
          "test/".endsWith('/'); //true
          

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2013-08-11
            • 2023-03-11
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多