2012-07-29 36 views
0

我正在使用javascript來搜索HTML頁面中的文本。我正在尋找的一件事是行包含一個「en-dash」,HTML字符–,它在HTML頁面中看起來像這樣(它是一個項目列表,用短劃線分隔):在JavaScript中,如何搜索「 - 」(en-dash)?

項目一個
項目二

項目三

如何在Javascript中尋找它?我試過以下,這是行不通的:

itemList.search(「 - 」);
itemList.search(「–」);

+0

是什麼'itemList'? – madfriend 2012-07-29 16:13:00

+0

對此不起作用的是什麼? – Antimony 2012-07-29 16:13:07

+0

您需要向我們展示一些代碼。我們不知道'itemList'是什麼。此外,'.search()'只適用於字符串,所以如果'itemList'是一個對象,它會拋出一個錯誤。 – jackwanders 2012-07-29 16:13:35

回答

0

有一個函數indexOf。這將返回你搜索的字符(或字符串)的位置,返回-1不存在。

用法:

var str = "this is a dash - ..."; 
alert(str.indexOf('-')); 
//or 
alert(str.indexOf('–')); 
+0

indexOf並非所有瀏覽器都支持 – debianek 2012-07-29 16:17:44

+0

您正在使用常規短劃線,但工作正常。我正在尋找一個 en-dash。這是在HTML代碼中顯示爲一串字符:– – 2012-07-30 01:04:53

+0

然後indexOf('–') – 2012-07-30 01:18:58

0

搜索是一個功能,您可在每一個字符串對象。它返回匹配的位置,如果沒有找到-1。

所以 「abc-de」.search(「 - 」); 返回3,因爲它是對0123位置

http://www.w3schools.com/jsref/jsref_search.asp