からカンマを削除します。私は、文字列からcommas-含むcharacters-を削除し、コードの次のJavaScriptラインを持っている正規表現
return str.replace(/(?!\/)(?!\)(?!\-)(\W)/ig, '');
は、どのように私はカンマを削除するコードの一部を取ることができますか?
からカンマを削除します。私は、文字列からcommas-含むcharacters-を削除し、コードの次のJavaScriptラインを持っている正規表現
return str.replace(/(?!\/)(?!\)(?!\-)(\W)/ig, '');
は、どのように私はカンマを削除するコードの一部を取ることができますか?
ない「単語」の文字(すなわち。[a-zA-Z0-9_]
)と3つの先読みである任意の文字に一致し/(?!\/)(?!\)(?!\-)(\W)/ig
正規表現は、文字/
、と
-
を制限します。カンマは、\W
の一部であるため、削除されます。
あなたが別の先読みを追加し、それを維持したい場合は
:(?!,)
は、その後、あなたの正規表現は、次のようになります。
return str.replace(/(?!\/)(?!)(?!-)(?!,)(\W)/g, '');
私はunnecessay脱出し、大文字小文字を区別しないフラグを削除しました。
これは、のように記述する必要があります。downvoter
return str.replace(/[^\w\/, -]/g, '');
あなたの答えをありがとう、なぜ私は単にこの部分を削除することはできません説明することができます:\ W'正規表現から?あなたはまた、あなたが意味することを説明することができます:_私は不要なエスケープと大文字小文字を区別しないフラグを削除しました。ありがとうございました! – user3378165
@ user3378165:正規表現では、特定の特殊文字をエスケープする必要があります。スペースとダッシュは特別なものではないので、エスケープする必要はありません。 '\ W'だけを削除することはできません。なぜなら、長さが0のマッチした3つの先読みしかないからです。何も削除しても何も削除できません! – Toto
@ user3378165:いくつかの正規表現の基本については、http://stackoverflow.com/questions/22937618/reference-what-does-this-regex-meanおよびhttp://www.regular-expressions.info/ – Toto
ないが、いくつかのより多くの情報と予想される入力と出力の文字列を提供してください。 – Jan