1. ホーム
  2. javascript

部分文字列を抽出するための正規表現が、なぜか2つの結果を返す

2023-11-15 15:16:59

質問

私はjavascriptで多くの正規表現を行う必要がありますが、構文に関するいくつかの問題を抱えています。

var tesst = "afskfsd33j"
var test = tesst.match(/a(.*)j/);
alert (test)

と表示されます。

"afskfsd33j, fskfsd33"

なぜ元の文字列とマッチした文字列が出力されるのかよくわかりません。どうすればマッチした文字列だけを出力させることができるのでしょうか。

アドバイスに感謝します。

どのように解決するのですか?

match は配列を返します。

JavaScriptにおける配列のデフォルトの文字列表現は、カンマで区切られた配列の要素です。この場合、目的の結果は配列の2番目の要素にあります。

var tesst = "afskfsd33j"
var test = tesst.match(/a(.*)j/);
alert (test[1]);