2

我有两句话:

Today one dog will eat 2 kg of meats more than a cat
Human always prefer dog and cat

在正则表达式的帮助下:

  1. 我想找到有狗和猫在一起没有人的句子
  2. 我还需要在 dog 和 cat 之间有超过 3 个字符的单词,我们找不到人类
4

1 回答 1

2

假设您要匹配的字符串包含一个句子:

"^(?!.*human)(?=.*dog)(?=.*cat)"

如果字符串包含dogandcat但不包含 ,将匹配human

dog对于您的第二个问题(在and之间查找所有超过两个 (!) 字符的单词cat,您需要两个步骤(至少在 Java 中):

首先,找到正则表达式之间dogcat使用正则表达式之间的字符串部分

"(?<=dog).*(?=cat)"

然后,在匹配结果上,使用正则表达式"\\w{3,}"查找长度为 3 或以上的所有字母数字单词。

于 2013-01-16T21:02:44.887 回答