この単純な正規表現は私を悩ませています。手を貸してもらえますか?
JavaScriptFoo's Bar
で戻るにはどうすればよいですか?foos-bar
var str = "Foo's Bar";
str.replace(/\s+/g, '-').replace('/[^a-zA-Z-]/g', '').toLowerCase();
return str;
私にできる最善のことはfoo's-bar
、を残すこと'
です。
ありがとう。
この単純な正規表現は私を悩ませています。手を貸してもらえますか?
JavaScriptFoo's Bar
で戻るにはどうすればよいですか?foos-bar
var str = "Foo's Bar";
str.replace(/\s+/g, '-').replace('/[^a-zA-Z-]/g', '').toLowerCase();
return str;
私にできる最善のことはfoo's-bar
、を残すこと'
です。
ありがとう。
Esailja は適切です - あなたの正規表現は正しいですが、2 番目の正規表現は引用符で囲まれているため、文字列として解釈されています。それを修正すると、コードは完全に機能します。
str.replace(/\s+/g, '-').replace(/[^a-zA-Z-]/g, '').toLowerCase();
順序を逆にして、一般的に単語やスペースの文字を避けてみてください
str.replace(/[^\w\s]+/g,'').replace(/\s+/g,"-").toLowerCase()
コードには 2 つの問題があります。
replace
)str
str = str.replace(/\s+/g, '-').replace(/[^a-zA-Z-]/g, '').toLowerCase();