0

これは、テキストの本文のタグを取得する方法です。

var tags =  body.match(/#([a-z0-9]+)/gi);

ただし、文が次の場合:

The brown #fox jumped over ‘ fence.

上記の正規表現は「8216;」を扱います。タグとして、それは私が望まないものです。タグとして「キツネ」だけが欲しいです。

注:基本的な正規表現ソリューションが必要です。

4

3 に答える 3

8

これを試してください:

/(^#|\s#)([a-z0-9]+)/gi

ライブデモ:http: //jsfiddle.net/DerekL/NpjyR/

またはこれ:

/(^#|[^&]#)([a-z0-9]+)/gi   //this will exclude every &#
于 2012-05-17T04:36:07.770 に答える
2

DOMにアクセスできると仮定すると、DOMを使用してHTMLをデコードし、テキストコンテンツを照合できます。

var temp = document.createElement('div');
temp.innerHTML = body;
var tags = temp.textContent.match(/#([a-z0-9]+)/gi);
于 2012-05-17T04:34:35.220 に答える
0

これを試してください:

#([a-z0-9]+)\b(?!;)
于 2012-05-17T04:35:14.030 に答える