对开始和结束于特定 format/word 的重复部分进行分组
Grouping a repetitive section starting and end on a specific format/word
我正在尝试捕获以特定单词 Case
开始并以格式为 dd.mm.yyyy
或 dd.m.dddd
的日期结束的多行字符串
示例文本如下:
案例No.X.1 我知道我是幸运儿(1)a sda
asddasd (ii) sa asdas asd aklk 铁路,飞机
asd-(一二三四)。
截止日期......... 29.8.1818
案例No.X.1 我知道我是幸运儿(1)a sda
asddasd (ii) sa asdas asd aklk 铁路,飞机
asd-(一二三四)。
截止日期......... 29.8.1818
案例No.X.1 我知道我是幸运儿(1)a sda
asddasd (ii) sa asdas asd aklk 铁路,飞机
asd-(一二三四)。
截止日期......... 29.8.1818
案例No.X.1 我知道我是幸运儿(1)a sda
asddasd (ii) sa asdas asd aklk 铁路,飞机
asd-(一二三四)。
截止日期......... 29.8.1818
我正在尝试这个:
标志: g m i
^case[^]*\d{1,2}\.\d{1,2}\.\d{2,4}
^case[\s\S]*\d{1,2}\.\d{1,2}\.\d{2,4}
((^case)[\s\S]+(\d{1,2}\.\d{1,2}\.\d{2,4}))
注意:已设置不区分大小写的标志
我希望得到每个段落的分组 (case - date)
。
这些表达式捕获了第一个 case 到最后 date
的唯一一组
案例 No.X.1 我知道我是个幸运儿 (1) a sda asddasd (ii) sa asdas asd aklk 铁路,飞机 asd - (one二三四)。截止日期.........29.8.1818
案例No.X.1 我知道我是个幸运儿 (1) a sda asddasd (ii) sa asdas asd aklk Railway, Airplane asd - (一二三四).截止日期.........29.8.1818
案例No.X.1 我知道我是个幸运儿 (1) a sda asddasd (ii) sa asdas asd aklk Railway, Airplane asd - (一二三四).截止日期.........29.8.1818
案例No.X.1 我知道我是个幸运儿 (1) a sda asddasd (ii) sa asdas asd aklk Railway, Airplane asd - (一二三四).截止日期.........29.8.1818
我正在调查换行符和环顾四周。
使用flags=re.DOTALL|re.M
(regex101):
data = '''Case No.X.1 I know I am a lucky boy (1) a sda asddasd (ii)
sa asdas asd aklk Railway, Airplane asd - (one two three four). Closing date ......... 29.8.1818
Case No.X.2 I know I am a lucky boy (1) a sda asddasd (ii)
sa asdas asd aklk Railway, Airplane asd - (one two three four). Closing date ......... 29.8.1818
Case No.X.3 I know I am a lucky boy (1) a sda asddasd (ii)
sa asdas asd aklk Railway, Airplane asd - (one two three four). Closing date ......... 29.8.1818
Case No.X.4 I know I am a lucky boy (1) a sda asddasd (ii)
sa asdas asd aklk Railway, Airplane asd - (one two three four). Closing date ......... 29.8.1818'''
import re
for m in re.findall(r'^Case.*?\d{1,2}\.\d{1,2}\.\d{2,4}$', data, flags=re.DOTALL|re.M):
print(m)
print('-' * 160)
打印:
Case No.X.1 I know I am a lucky boy (1) a sda asddasd (ii)
sa asdas asd aklk Railway, Airplane asd - (one two three four). Closing date ......... 29.8.1818
----------------------------------------------------------------------------------------------------------------------------------------------------------------
Case No.X.2 I know I am a lucky boy (1) a sda asddasd (ii)
sa asdas asd aklk Railway, Airplane asd - (one two three four). Closing date ......... 29.8.1818
----------------------------------------------------------------------------------------------------------------------------------------------------------------
Case No.X.3 I know I am a lucky boy (1) a sda asddasd (ii)
sa asdas asd aklk Railway, Airplane asd - (one two three four). Closing date ......... 29.8.1818
----------------------------------------------------------------------------------------------------------------------------------------------------------------
Case No.X.4 I know I am a lucky boy (1) a sda asddasd (ii)
sa asdas asd aklk Railway, Airplane asd - (one two three four). Closing date ......... 29.8.1818
----------------------------------------------------------------------------------------------------------------------------------------------------------------
我正在尝试捕获以特定单词 Case
开始并以格式为 dd.mm.yyyy
或 dd.m.dddd
示例文本如下:
案例No.X.1 我知道我是幸运儿(1)a sda asddasd (ii) sa asdas asd aklk 铁路,飞机 asd-(一二三四)。 截止日期......... 29.8.1818
案例No.X.1 我知道我是幸运儿(1)a sda asddasd (ii) sa asdas asd aklk 铁路,飞机 asd-(一二三四)。 截止日期......... 29.8.1818
案例No.X.1 我知道我是幸运儿(1)a sda asddasd (ii) sa asdas asd aklk 铁路,飞机 asd-(一二三四)。 截止日期......... 29.8.1818
案例No.X.1 我知道我是幸运儿(1)a sda asddasd (ii) sa asdas asd aklk 铁路,飞机 asd-(一二三四)。 截止日期......... 29.8.1818
我正在尝试这个:
标志: g m i
^case[^]*\d{1,2}\.\d{1,2}\.\d{2,4}
^case[\s\S]*\d{1,2}\.\d{1,2}\.\d{2,4}
((^case)[\s\S]+(\d{1,2}\.\d{1,2}\.\d{2,4}))
注意:已设置不区分大小写的标志
我希望得到每个段落的分组 (case - date)
。
这些表达式捕获了第一个 case 到最后 date
的唯一一组案例 No.X.1 我知道我是个幸运儿 (1) a sda asddasd (ii) sa asdas asd aklk 铁路,飞机 asd - (one二三四)。截止日期.........29.8.1818
案例No.X.1 我知道我是个幸运儿 (1) a sda asddasd (ii) sa asdas asd aklk Railway, Airplane asd - (一二三四).截止日期.........29.8.1818
案例No.X.1 我知道我是个幸运儿 (1) a sda asddasd (ii) sa asdas asd aklk Railway, Airplane asd - (一二三四).截止日期.........29.8.1818
案例No.X.1 我知道我是个幸运儿 (1) a sda asddasd (ii) sa asdas asd aklk Railway, Airplane asd - (一二三四).截止日期.........29.8.1818
我正在调查换行符和环顾四周。
使用flags=re.DOTALL|re.M
(regex101):
data = '''Case No.X.1 I know I am a lucky boy (1) a sda asddasd (ii)
sa asdas asd aklk Railway, Airplane asd - (one two three four). Closing date ......... 29.8.1818
Case No.X.2 I know I am a lucky boy (1) a sda asddasd (ii)
sa asdas asd aklk Railway, Airplane asd - (one two three four). Closing date ......... 29.8.1818
Case No.X.3 I know I am a lucky boy (1) a sda asddasd (ii)
sa asdas asd aklk Railway, Airplane asd - (one two three four). Closing date ......... 29.8.1818
Case No.X.4 I know I am a lucky boy (1) a sda asddasd (ii)
sa asdas asd aklk Railway, Airplane asd - (one two three four). Closing date ......... 29.8.1818'''
import re
for m in re.findall(r'^Case.*?\d{1,2}\.\d{1,2}\.\d{2,4}$', data, flags=re.DOTALL|re.M):
print(m)
print('-' * 160)
打印:
Case No.X.1 I know I am a lucky boy (1) a sda asddasd (ii)
sa asdas asd aklk Railway, Airplane asd - (one two three four). Closing date ......... 29.8.1818
----------------------------------------------------------------------------------------------------------------------------------------------------------------
Case No.X.2 I know I am a lucky boy (1) a sda asddasd (ii)
sa asdas asd aklk Railway, Airplane asd - (one two three four). Closing date ......... 29.8.1818
----------------------------------------------------------------------------------------------------------------------------------------------------------------
Case No.X.3 I know I am a lucky boy (1) a sda asddasd (ii)
sa asdas asd aklk Railway, Airplane asd - (one two three four). Closing date ......... 29.8.1818
----------------------------------------------------------------------------------------------------------------------------------------------------------------
Case No.X.4 I know I am a lucky boy (1) a sda asddasd (ii)
sa asdas asd aklk Railway, Airplane asd - (one two three four). Closing date ......... 29.8.1818
----------------------------------------------------------------------------------------------------------------------------------------------------------------