2011-07-11 13 views
6

jQueryを使用していますが、パターン置換を書き込もうとしていますが、動作しません。このような何かが動作する理由私は理解していないjavascript regexp replaceは動作しませんが、文字列を置き換えます

var $featured_rewrite = $('#featured').not('.slideshow'); 
$featured_rewrite.children().attr('href', $featured_rewrite.find('img').attr('src').replace('/-[0-9]+x[0-9]+\./i', '.')); 

::私もツールでチェックし、それが有効であったことを確認したと働く

.replace('-500x277.', '.') 

ではなく、この、私はこれを持っている

.replace('/-[0-9]+x[0-9]+\./i', '.') 

答えて

35

'/-[0-9]+x[0-9]+\./i'は文字列です。

/-[0-9]+x[0-9]+\./iは正規表現です。

"hi".match('/hi/') // returns null 
"hi".match(/hi/) // returns ["hi"] 

編集:はまた、ちょうど明確にすること、引用符以外のあなたの正規表現とは何の問題もありません。複数の試合を交換する必要がある場合は、/g(つまり、最後に/gi)を使用することを検討することもできますが、それだけです。

+0

+1ブライアン、いいキャッチ – kobe

+1

これは私に感謝しました。 – RTF

+0

試して無駄に時間を無駄にして、マニュアルを読んでも、私がここに来るまで、 – Sandman4

関連する問題