- 締切済み
正規表現のことです。
今、Javaで正規表現の勉強をしています。 この問題が、どうしても分かりません。 ¥(0¥|[+-]?[1-9][0-9]*¥)¥(¥.[0-9]+¥)? 小数点があるのかな?という感じです。 あと、数字しかないことぐらいです。 どなたかよろしくお願いいたします。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- salsberry
- ベストアンサー率69% (495/711)
回答No.1
「この問題」とありますが、肝心の問題が書かれていません。提示されている正規表現が何を表すのかを答えよと言うのか、その正規表現を基に改造せよと言うのか、それ以外か。 正規表現が何を表しているかという問題だと仮定して、 ・一つ目の)までと、その後ろの部分は分けて考える ・?は0回か1回の出現、*は0回以上の出現、+は1回以上の出現を表す ・[]はその中に含まれる文字のどれか1つ 要素要素に分解して一つずつ理解してください。 たとえば [1-9][0-9]* は1から9の文字が一文字ある後ろに、0から9の文字が繰り返される (ただし繰り返し回数が0の場合もあり) ことを表すので、 7 25 309942 などにはマッチしますが、 0 03 8X などにはマッチしません。