私は、特定の単語に一致させ、別のパターンが得られるまですべて一致させるシナリオがあります。例えばRegexの特定のパターンを取得するまでの一致方法
ABCは= 145865865
は次に何が方法
と入って来た後
日=/2001分の11私が試してみました
(。* 11? )しかし、それは私のシナリオでは、特定の行に一致する私は間に複数の行のデータがあります。
どうすればいいですか?私はあなたが探していると思うものに
私は、特定の単語に一致させ、別のパターンが得られるまですべて一致させるシナリオがあります。例えばRegexの特定のパターンを取得するまでの一致方法
ABCは= 145865865
は次に何が方法
と入って来た後
日=/2001分の11私が試してみました
(。* 11? )しかし、それは私のシナリオでは、特定の行に一致する私は間に複数の行のデータがあります。
どうすればいいですか?私はあなたが探していると思うものに
最寄の推測:
ABC=(\d+)[\s\S]*?Date=(\d\d/\d\d/\d{4})
これは「空白文字か空白文字のどちらか」「任意の文字」に相当し、意味[\s\S]
を使用しています。 .
は任意の文字に一致するように設定することもできますが、フラグを設定しなくてもちょうどよいので、私は[\s\S]
を好む傾向があります。あなたは使用している言語を指定していないので、このようなフラグを設定する方法はわかりません(Pythonではre.DOTALL
です)。
複数行?あなたが間に改行文字(\ n)を持っている意味場合は、次のように、あなたは、DOTALLフラグを設定する必要があります。
Pattern p = Pattern.compile(<your-regex-here>, Pattern.DOTALL)
上記の2つの文字列の改行文字にマッチします。