我有以下类型的字符串“sometext1 §§ 12 Abs. 5, 13a, 14 Satz 1 Nr. 3, 9, 8 sometext2”
。我想查找 §§
子字符串以及所有连续出现的 Abs.
、und
、Satz
和 Nr.
以及带有单个字符的数字,如 13a
。
示例:
"Die Anzahl der §§ 12 Abs. 5, 13a, 14 Satz 1 und 8 kann variieren. Für die §§ 15a, 18 Abs. 5, 21 und 23 Satz 3 trifft dies nicht zu.
在这里我想要得到12 Abs。 5、13a、14 Satz 1 和 8
和 15a、18 Abs。 5、21 和 23 Satz 3
。
我使用了以下正则表达式'r'§§ (.*)? ^(?!Satz|Abs.|Nr.|\d+[a-z]| |,)'
。
最佳答案
你可以使用
§§\s*((?:Satz|Abs\.|Nr\.|\d+[a-z]?|und|[\s,])+)(?<=\w)
请参阅regex demo 。 详细信息:
-
§§
- 文字文本 -
\s*
- 零个或多个空格 -
((?:Satz|Abs\.|Nr\.|\d+[a-z]?|und|[\s,])+)
- 第 1 组捕获Satz
的一次或多次出现,Abs.
,Nr.
,一个或多个数字(可选后跟一个小写 ASCII 字母)und
、空格或逗号。 -
(?<=\w)
- 紧邻左侧的字符必须是单词字符。
关于python - 查找以特定符号开头,然后连续出现特定单词和模式的多个匹配项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71170063/