私はいくつかのJavaScriptコードでこれを見つけ、何が一致しているのか疑問に思っていました.
var i = /^tags: ?((?:.*, ?)*.*)$/m.exec(e.details);
私はいくつかのJavaScriptコードでこれを見つけ、何が一致しているのか疑問に思っていました.
var i = /^tags: ?((?:.*, ?)*.*)$/m.exec(e.details);
^ //start of the string
tags: //4 characters: "tags"
? //an optional space
((?:.* // 0 or more of any character except a newline
, ?) //a comma, then an optional space
* // all the stuff on the previous 2 lines, repeated 0 or more times
.*) //a capturing group of any character, repeated 0 or more times
$ //end of the string
基本的に、コンマで区切られたタグのリスト。
この正規表現は、"tags:" で始まるすべての文字列を受け入れます。
コロンの後のものをキャプチャしようとします。(注: 貪欲なので、作成者がやりたいことを実行するとは思いません.*
。) グループごとに 1 つのタグではなく、すべてを 1 つのグループにキャプチャします。