【发布时间】:2018-02-22 03:34:09
【问题描述】:
我一直在尝试匹配不包括某个字符的模式。
假设给定的字符是“h...o”,我想匹配不包括某个字符的所有单词,比如说“c” 我已经尝试了很多不同的方法来解决这个问题。 其中一些包括,
"h^[c]^[c]^[c]o"
"h(!?c)(?!c)(!?c)o"
但是这些都不起作用,有人知道怎么回事吗?
这有点像一个作弊的刽子手,我返回所有不包含猜测的单词。
vector<string> getWords(string currentWord, char guess){
for(auto& i: currentWord){
string reg = ""
if(i == '_'){
string t = [[regex expression for acception any char except 'guess']]
reg += t;
}else{
reg += i;
}
}
return getMatchingWords(mapOfWords, reg)
}
只接受所有不包含猜测的单词在这里不起作用,因为排除是索引绑定的
【问题讨论】:
-
蛮力在这里并没有真正的帮助:) 你认为一个词是什么?你如何定义这些“词”的界限?我问是因为
.不是单词字符(从正则表达式的角度来看) -
它来自字典
-
能否提供一个代码 sn-p 来说明问题?一个MCVE (minimal complete verifiable example)。
-
编辑了问题
-
抱歉,这不是说您遍历字符串并检查某些特定子字符串是否存在
guess字符吗?您可以检查Check if a string contains a string in C++ 而不是查找正则表达式。