当你只知道前几个字母时,我有一个关于如何在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”的方法,一旦找到,就将完整字符串存储在变量中?
提前致谢!
答案 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'开头。