我正在使用此正则表达式检查以下文本块。
CourierRepository
但是我想排除此块,因为它包含JpaRepository<Courier, Integer>
,因此我对其进行了修改,使其包含否定的前瞻性((?<=(over the)).*)?(ask.*question[s]?| answer(ing)?.*question[s]?)(?!(business))
。
它应排除此块;
我只需要问几个问题,为您推荐最佳选择。您从事哪种业务?
它应该包含此块;
我只需要问几个问题,为您推荐最佳选择。
但是负面的前瞻似乎没有用吗?
答案 0 :(得分:1)
您可以使用(?!(business))
而不是(?!.*business)
,因为子串business
不在比赛之后,而是在零个或多个其他字符之后。
使用
((?<=over the).*)?(ask.*questions?| answer(?:ing)?.*questions?)(?!.*business)
^^^^^^^^^^^^^^
请参见regex demo。