"Doe、John、A"(姓、名、ミドルイニシャル)のような文字列があります。Regexはすべてのカンマを値に置き換えます
文字列を "Doe * John * A"に変換する正規表現を作成しようとしています。
しかし、 "Doe、John、A"は "Doe * John * A"に変換されるので、この文字列のすべてのスペースを考慮する必要があります。
また、 "Doe John A"という文字列は "Doe * John * A"に変換する必要があります。
私はこれを書いて始めましたが、私はスペース&に詰まっていると思いますが、ユーザーがコンマを供給しない可能性があります。ここで
は、私が持っているものです。
var myString = "John, Doe, A";
var myOtherString = "John Doe A";
var myFunction = function (aString) {
aString = aString.replace(", ", "*");
aString = aString.replace(", ", "*");
return aString;
};
これらは両方とも"Doe*John*A"
を返す必要があります。
私はこの機能で自分自身を繰り返しすぎていると思います。また、カンマが付かない可能性も考慮していません。
これを行うより良い方法はありますか?
' "ドウ、ジョン、" .replace(/ \ sの*、\ 'は*/gのよ? * @)* // "* D * o * e ** J * o * h * n ** A *" ' – CruorVult
@CruorVultが歓声をあげる –
*を*に置き換えるとどうなりますか?私はちょうどこれを 'aString = aString.replace(/ [] *、[] * | [] +/g、 ' - ')に変更しますか? ? ' - 有益な答え、btwのために感謝します。 – Jeff