【问题标题】:Substring by a "." in html [closed]由“。”组成的子字符串在 html [关闭]
【发布时间】:2013-04-10 06:57:13
【问题描述】:

我有一个由“apple.jpg”组成的字符串 我正在尝试执行一个子字符串,以便它将返回“。”之前的值。这是苹果。

以下是我的代码,但它没有返回任何值:

 str="apple.jpg";
 $subString = document.write(str.substring(".");
 echo ($subString);

我该怎么做呢?

【问题讨论】:

  • 那是什么语言?一种PHP?
  • 您缺少)
  • @Doorknob ,我只是想说。我希望你也是讽刺的。

标签: javascript html


【解决方案1】:

您可以尝试拆分字符串并获取数组的第一个元素:

myArray = str.split(".");
name = myArray[0];

以上是伪代码,因为我不确定您使用的是哪种语言...(您在示例中结合了 JavaScript 和 PHP!)

注意str 类似于some.word.jpg,上面的代码将只返回some。

如果这是一个问题,请尝试使用lastIndexOf(),如下所示:

name = str.substring(0, str.lastIndexOf("."));

请注意,上面现在是 JavaScript,因为 PHP 中没有 lastIndexOf 函数。

【讨论】:

    【解决方案2】:

    你可以使用 str.indexOf(".");然后使用子字符串函数

    也许像这样str.substring(0,str.indexOf("."));

    【讨论】:

      【解决方案3】:

      即使您正在混合使用 php 和 js。尝试寻找一个名为 lastIndexOf() 的函数。

      找到给定字符串的 las 位置

      【讨论】:

        【解决方案4】:

        从混合信息中可以看出,javascript 和 php 有一种方法

        javascript:

        str="apple.jpg";
         $subString = str.split(".");
        document.write($substring[0]);
        

        php:

        $str="apple.jpg";
         $subString = explode(".", $str);
        echo $substring[0];
        

        虽然最好不要在javascript的变量中使用$符号。

        【讨论】:

        • 在变量名中使用 $ 在 ES5 中很好。 ECMA-262 ed 3 中有一个限制,在很大程度上被一些流行的库忽略了,所以现在允许了。
        • 一些使用jQuery的开发者使用$来表示jQuery返回的文档元素,例如: $myDiv = $("#my-div")
        • 我没有看到 jQuery 标签,所以用户不应该混淆 $varname 是一个 jQuery 对象。至少在这种情况下。 ;-)
        • @MMM - 不过,由于限制(过去),我建议不要这样做。特别是如果您还不是经验丰富的程序员。 :)
        【解决方案5】:

        substring() 需要您希望它返回的子字符串的起始位置和长度(请参阅substring())。您需要添加 indexOf() 才能获得所需的结果:

        $subString = document.write(str.substring(0,indexOf(str, ".")));
        

        【讨论】:

        • 出于this 的原因,我冒昧地将您的 w3scools 链接更改为 Mozilla Dev 链接。
        • 另外,你真的应该使用document.write()吗?
        • @MMM 谢谢你,谢谢你的“这个”链接!这是一个伟大的举措!
        猜你喜欢
        • 1970-01-01
        • 2012-10-21
        • 2020-06-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-09-22
        • 1970-01-01
        相关资源
        最近更新 更多