0

現在の問題の正しい正規表現を形成できないようです。

zip ファイルがあり、フォルダー内のファイルのみのすべてのエントリを調べています。

スーパーマン/underwear/picture.jpg

上記の例では、下着フォルダのみのファイルを探しています! (「下着」の中に他のフォルダがあるかもしれません

私はこれで出てきました

String patternStr = "(.*)/underwear/([a-zA-Z])-/.([a-zA-Z])";

最初の部分は機能しているようです.. /underwear/ が表示されるまでスキャンを探しますが、ファイルのスキャンは失敗するだけです。

助けはありますか?

4

1 に答える 1

2

したがって、最初の問題は、現在のファイルルックアップにいくつかの変更が必要であることです。middel マイナスが何であるかわかりません。ピリオドはバックスラッシュでエスケープする必要があります。スラッシュは使用しません。

String patternStr = "(.*)/underwear/([a-zA-Z])\.([a-zA-Z])"; 
                                              ^^

2番目の部分は、単一ではなく一連の文字を探しているため、イテレータを追加することです

String patternStr = "(.*)/underwear/([a-zA-Z]+)\.([a-zA-Z]+)"; 
                                             ^            ^

また、あなたのファイルは手紙だけですか?それは安全だと思いますか。それらは常に単一の単語、ドット、および単一の単語ですか? 「abde01.gif」または abcgif ではありませんか? それが基本的に機能したら、少し強化したいかもしれません.

于 2013-09-29T13:05:44.313 に答える