是否有一种简单的方法可以检测文本块中的短语模板?
例如,给出文字:
不确定如何处理此问题。这很困难,而且我很难说我不知道怎么做。但也许这对其他人来说很明显?
模板:
[x],[x]表示[Y]
会导致匹配。
我认为某些描述的正则表达式是最好的选择,虽然我不知道正则表达式是否可以这样做。
奖励:如果尝试连续匹配多个模板,那么计算效率最高的方法是什么?
编辑:只是为了澄清,我只需要完全匹配。例如,上面的模板不必须匹配以下内容:
苹果,苹果,我的意思是梨
答案 0 :(得分:1)
如果你需要通过regexp进行匹配,你可以使用这个:
(\w+), and by \1 I mean \w+
apple, and by apple I mean pineapple -> match
apple, and by apple I do mean pear -> not match
(\w+) - matches 1 word and save it to first group
\1 - word from first group
\w+ - match second word
上更多地使用regexp
但是如果你真的需要与很多模式匹配,你需要定义你需要的所有模式并构建自己的finite state machine