質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.47%
JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

正規表現

正規表現とは特定の文字列によるパターンマッチングを行う際に用いられる宣言型プログラミングです。

Q&A

解決済

3回答

1300閲覧

正規表現のアスタリスクとプラスがわからない

3_April_2021

総合スコア48

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

正規表現

正規表現とは特定の文字列によるパターンマッチングを行う際に用いられる宣言型プログラミングです。

0グッド

0クリップ

投稿2021/09/18 07:52

編集2023/12/09 14:07

/abc*/の場合、外部リンク「*」の説明の「直前の項目 "x"」はcに該当し、「0回以上」の「0」とは空文字("")のことですか。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

think49

2021/09/18 07:57

説明が不明瞭なので、コードを書いて説明してください
3_April_2021

2021/09/18 08:48

その後進歩があったので、今のところ最小で簡潔な質問は、 /abc*/の場合、外部リンク「*」の説明の「直前の項目 "x"」はcに該当し、「0回以上」の「0」とは空文字("")のことですか。 です。
Daregada

2021/09/18 09:05

> 該当項目の「直前の項目 "x" の 0/1 回以上の繰り返しに一致」という説明がよくわかりません。 これは「?」の説明で、「*」と「+」には関係ないでしょう。
3_April_2021

2021/09/18 09:25

コメント内容の意味が十分に読めませんでしたが、質問はすでに自己解決済みですので、申し訳ありませんが今は他の行動を優先します。
think49

2021/09/18 09:28 編集

自己解決済であれば、回答が入る前に自己回答してクローズすべきでした。 他人の時間を使っている事を認識されているでしょうか。
3_April_2021

2021/09/18 09:38

現在、あなたの回答を確認している最中ですから、焦らないでください。
3_April_2021

2021/09/18 09:41

think49ユーザ、解決した以上、締め切りまで急いで行動しようとしていますが、常に画面の前にいることはできないことに理解をお願いします。
m.ts10806

2021/09/18 09:56

「どのタイミングで解決したか分からないコメントの書き方」というのが問題ではと。
Zuishin

2021/09/18 10:13

今、3_April_2021 ユーザの質問を読んでいますので、焦らないでください。
Zuishin

2021/09/18 10:20

3_April_2021 ユーザのこの質問はすでに解決していて読む価値がないことがわかりました。焦らないでください。
guest

回答3

0

直接的な回答ではないですが、ツールを使うとわかりやすいかもですね。

正規表現チェックツールまとめ - Qiita

投稿2021/09/18 09:56

Lhankor_Mhy

総合スコア36117

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ベストアンサー

その後進歩があったので、今のところ最小で簡潔な質問は、
/abc*/の場合、外部リンク「*」の説明の「直前の項目 "x"」はcに該当し、「0回以上」の「0」とは空文字("")のことですか。
です。

直前の項目 "x" を0回繰り返せば、空文字にマッチします。

JavaScript

1console.log(/x*/.test('')); // true

直前の項目 "c" を0回繰り返せば、同様に空文字にマッチします。

JavaScript

1console.log(/abc*/.test('ab')); // true

MDNで「直前の項目」と説明しているのは「繰り返し可能な範囲」を表しており、()[] で括れば、「直前の項目」の範囲は広がります。

JavaScript

1console.log(/(ab)*/.test('')); // true 2console.log(/(ab)*/.test('abab')); // true 3console.log(/[ab]*/.test('')); // true 4console.log(/[ab]*/.test('aabb')); // true

Re: 3_April_2021 さん

投稿2021/09/18 09:07

think49

総合スコア18166

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

3_April_2021

2021/09/18 13:09

現時点ではベストアンサー候補ですので(よほど他に的確明快な回答が来ない限りスケジュールは変わりません)、回答理解を第一優先していますが、理解のために少し時間を要しそうな調べ事があります。
3_April_2021

2021/09/18 13:13

誤解内容を考えると、感情的になった気持ちはわかります。 しかし、進歩状況の報告や誤解訂正などの感情ケア、そのような対応は、その分調査作業に割けたはずの時間を奪います。対応要求事項や他の事柄への対応優先要求が質問上で増えるほど、その対応に割く時間によって質問の締め切りはより先になりかねません。解決済みの質問の締め切りを最優先に行動することに異議がない場合は、どうかしばらく放置をお願いします。
Zuishin

2021/09/18 15:22

やっぱりお前か。
m.ts10806

2021/09/18 18:56

>3_April_2021さん 「自己解決済み」ならあーだこーだ言ってる間に自分でどう解決したか回答書いたほうがよっぽど建設的ではないでしょうか。 「自己解決済み」「解決済みの質問」と自己主張されていますが、この質問のステータスは「受付中」です。第三者に伝わってません。 それにthink49さんが感情的になってると思ってるのはあなただけです。
3_April_2021

2021/09/19 03:53

RegExpオブジェクトのflagsとtest()メソッドの理解に時間を割いていました。 特に、前者について納得できるだけの情報調査・検証には時間がかかりそうです。 状況と軽い調査は済ませたことを踏まえて、一旦この回答で締め切ります。
guest

0

当該サイトに書いてある説明文を普通に読めば何にも迷う余地はないはずなんですけどね。

《該当項目の「直前の項目 "x" の 0/1 回以上の繰り返しに一致」という》というのはアスタリスクともプラス記号とも関係ない話です。東京発大阪行き「のぞみ」と「ひかり」の違いを議論しようしようとしているのに、なぜ東北新幹線は山形を通らないのだろうと悩んでいるようなものです。

どうしても感覚的に理解できないなら、ブラウザ標準装備の検証ツールで実験を繰り返してみればいいでしょう。

イメージ説明

投稿2021/09/18 09:37

KojiDoi

総合スコア13671

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.47%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問