私のコードを以下で見つけてください。私はファイルとディレクトリを繰り返し、正規表現へのすべてのマッチを印刷しようとしています:(&)(.+?\b)
しかし、これは動作していません(空の文字列を返します)。どこで私は間違えましたか?正規表現が動作しないための正規表現
import groovy.io.FileType
class FileExample {
static void main(String[] args) {
def list = []
def dir = new File("*path to dir*")
dir.eachFileRecurse (FileType.FILES) { file ->
list << file.name;
def s= "${file.text}";
def w = s.toString();
w.readLines().grep(~/(&)(.+?\b)/)
}
}
}
これの結果として、あなたは何を期待していますか?私は、正規表現と一致する行を含むファイルが必要だと思いますか? 'each'は常に副作用のためであり、せいぜいその入力を返します。 – cfrick
私はすべての正規表現のマッチがリストされるようにしたい、私は本当にマッチの位置を気にしない。 – user9053278