Javascript-如何通过搜索前几个字母来存储字符串

时间:2014-10-17 16:30:34

标签: javascript html

当你只知道前几个字母时,我有一个关于如何在Javascript中存储字符串的问题。这是一个例子。 HTML代码是这样的:

<HTML>

<HEAD>
    <TITLE>Your Title Here</TITLE>
</HEAD>

<BODY BGCOLOR="FFFFFF">
    <CENTER>
        <IMG SRC="clouds.jpg" ALIGN="BOTTOM"> </CENTER>
    <HR>
    <a href="http://somegreatsite.com">Link Name</a> is a link to another nifty site
    <H1>This is a Header</H1>
    <H2>This is a Medium Header</H2> Send me mail at <a href="mailto:support@yourcompany.com">
support@yourcompany.com</a>.
    <P> This is a new paragraph!
        <A href="/003U0000015Rmza">Persons's Name/A> </P>
<P> <B>This is a new paragraph!</B> </P>
<BR> <B><I>This is a new sentence without a paragraph break, in bold italics.</I></B>
<HR>
</BODY>
</HTML>

我需要存储完整的'003U0000015Rmza'字符串,但我只会知道它以'003'开头。

Javascript中是否有搜索字符“003”的方法,一旦找到,就将完整字符串存储在变量中?

提前致谢!

2 个答案:

答案 0 :(得分:0)

您希望有一种方法来查看字符串是否以某种模式开头。一种简单的方法是重载String类型以具有startsWith()函数。

请看this example

答案 1 :(得分:0)

这是String.indexOf()派上用场的地方。

inThis.indexOf(findThat)函数搜索它所传入的字符串的字符串。它返回一个数字,说明在你查找的字符串中找到你寻找的字符串(findThat)的位置( inThis)。如果它根本找不到字符串,则返回-1,这不是任何字符串中的有效位置。

要使用它来查找inThat是否以findThis开头,您可以执行以下操作:

if (inThis.indexOf(findThat) === 0) {
    // do something
}

要将该字符串存储在某处,您可以尝试这样做:

var myString; // The place where we'll store the string
if (theLink.href.indexOf('003') === 0) {
    // This is the string we need to store
    myString = theLink.href;
}

这是因为任何字符串中的第一个字符位于位置0.因此,如果indexOf在位置0找到'003',那么我们知道该字符串以'003'开头。