1
var temp = "/User/Create";
alert(temp.count("/")); //should output '2' find '/'

私はこのようにしてみます

// the g in the regular expression says to search the whole string 
// rather than just find the first occurrence
// if u found User -> var count = temp.match(/User/g);
// But i find '/' char from string
var count = temp.match(///g);  
alert(count.length);

ここで試すことができますhttp://jsfiddle.net/pw7Mb/

4

2 に答える 2

4

正規表現リテラルではスラッシュをエスケープする必要があります。

var match = temp.match(/\//g);
// or
var match = temp.match(new RegExp("/", 'g'));

ただし、null何も見つからない場合は返される可能性があるため、それを確認する必要があります。

var count = match ? match.length : 0;

短いバージョンsplitでは、一致間の部分を常に配列として返す を使用できます。

var count = temp.split(/\//).length-1;
// or, without regex:
var count = temp.split("/").length-1;
于 2012-07-26T07:00:11.463 に答える
4

エスケープ文字 (\) を使用して正規表現を入力します。

var count1 = temp1.match(/\//g); 
于 2012-07-26T06:20:22.573 に答える