私はこのパターンがp
であり、このパターンを使用して一致するものがあるかどうかを調べる必要があります。これはPythonで書かれています。regex matching parsing
p = "keyword" + ".*?(\d+(\.\d+)?[\s%]?[\w/]*)" found = re.findall(p, some_text)
私は、この正規表現の構文解析に問題があります。
最初の "?"とは何ですか?
"。*"は0回以上のものにマッチすることを理解します。しかし、 "?"ここにあります。
ネストされたキャプチャグループの括弧を見ると変です。それは何をするためのものか?
「?」とは何ですか?正規表現で
[\s%]?
で?私はこれが "%"に続く空白にマッチしていると仮定します。しかし、 "?"ここにあります。[\w/]*
正規表現のアスタリスクは何ですか?私はこれがスラッシュの後ろに続く任意の単語の文字にマッチしていると仮定します。しかし、 "*"が何をしているのかは分かりません。
[参照 - この正規表現は何を意味しますか?](http://stackoverflow.com/questions/22937618/reference-what-does-this-regex-mean) – MYGz