-1

正規表現を使用して文字列を変換し、アルファベット(az)またはハイフンのみを含めるにはどうすればよいですか。取り除く必要が" ' ! ? .あります。複数回出現しても。

// if i have e.g.
var test = '"test!!!"';

// how can i get the value "test"?

誰かが助けることができます。RegExは私にとってまったく新しいものです。

4

5 に答える 5

1

単にreplaceあなたが望まないキャラクター:

'"test!!!"'.replace(/[^a-z-]/gi, '')

[^a-z-]azとハイフンを除くすべての文字に一致します。この/gフラグにより​​、正規表現が複数回適用されます。/iフラグ(オプション)は、大文字と小文字を区別せずに一致させます。つまり、大文字を置き換えません。

于 2012-10-14T21:34:40.787 に答える
1

これは非常に簡単です。必要な文字以外のすべてに一致する文字クラスを作成し、各オカレンス(グローバルフラグ)を空の文字列に置き換えることでそれらを削除します。

return str.replace(/[^a-z-]/g, "");
于 2012-10-14T21:34:51.390 に答える
0
 str = "hello!! my + name $ is slim-shady";
   console.log(str.replace(/[^a-z-]+/g, ''));

$ node src/java/regex/alphanum.js 
hellomynameisslim-shady
于 2012-10-14T21:40:12.067 に答える
0

任意の文字列変数に対してメソッドを使用し、replace削除する文字を指定します。

次に例を示します。

 var sampleString = ("Hello World!!");    //Sample of what you have. 
 var holdData = sampleString.replace(/!!/gi, '');
 window.alert(holdData);
于 2012-10-14T21:40:30.050 に答える
-1
var str = "test!!!";
str = str.replace(/[^A-Za-z\-]/g,"");
于 2012-10-14T21:35:28.703 に答える