0

JavaScript を使用して HTML ページ内のテキストを検索しています。私が探しているものの 1 つは、"en-dash"、HTML 文字を含む行です。これは、HTML ページでは次のようになります (これは en ダッシュで区切られた項目のリストです)。

アイテム 1
アイテム 2

アイテム 3

Javascriptで検索するにはどうすればよいですか? 次のことを試しましたが、うまくいきません。

itemList.search("–");
itemList.search("–");

4

2 に答える 2

1

関数 indexOf があります。これは、検索した文字 (または文字列) の位置を返します。存在しないの -1 を返します。

利用方法:

var str = "this is a dash - ...";
alert(str.indexOf('-'));
// or
alert(str.indexOf("\u2013")); // EN DASH unicode

– を \u2013 に変換する方法がわからない場合は、この関数を使用できます

function myUnescape(ampstr) {
  const span = document.createElement('SPAN');
  span.innerHTML = ampstr
  return span.textContent
}

myUnescape('&#8211') -> '-'
escape(myUnescape('&#8211')) -> '%u2013'
于 2012-07-29T16:14:25.590 に答える
0

検索は、すべての String-Object で使用できる機能です。一致した位置を返し、見つからない場合は -1 を返します。

だから "abc-de".search("-"); 0123 の位置にあるため、3 を返します。

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

于 2012-07-29T16:17:04.597 に答える