我一直在寻找一种在找到的匹配项周围抓取单词的方法,但对于我的情况来说它们太复杂了。我只需要一个正则表达式来抓取,比如说 10 个,匹配单词之前和之后的单词。有人能帮我建立一个模式来做到这一点吗?
例如,让我们看这个句子(没有意义):
sentence = "The hairy yellow, stinkin' dog, sat round' the c4mpfir3 and ate the brown/yellow smore's that the kids(*adults) were makin."
假设我们要匹配 smore's 之前和之后的 3 个单词(已经清理以匹配)。输出将是:
"ate the brown/yellow smore's that the were"
现在让我们以想要在 stinkin' 前后各取一个词为例:
"yellow, stinkin' dog"
另一个例子。“坐”:
"yellow, stinkin' dog, round' the and
现在让我们造一个新的句子:
sentence = "If the problem is still there after 30 minutes. Give up"
如果我试图匹配那里的单词,并在输出之前和之后取 2 个单词将是:
"is still there after minutes"
我知道它不是 10,但我想你明白这个例子吗?如果没有,请告诉我,我会提供更多。当我做这个时,我意识到我想要的比我最初想象的要多得多。我对正则表达式相当陌生,但我要试一试这个模式。
('[a-zA-Z\'.,/]{3}(word_to_match)[a-zA-Z\'.,/]{3}')
谢谢