我想知道在PHP中是否有像preg_match
这样的函数,我可以找到或匹配另一个字符串的字符串。
//In Array `word` // in array `part`
"Backdoor", 0 "mark" 3 (matches "Market")
"DVD", 1 "of" 2 (matches "Get off")
"Get off", 2 "" -1 (no match)
"Market", 3 "VD" 1 (matches "DVD")
我在想如果有一个函数只能匹配字符串的一部分就会很棒,但据我所知只有strcmp
但是只会比较是否匹配对于我的案例总是假的整个字符串。
答案 0 :(得分:3)
std::strstr()
。它没有正则表达式,但它确实进行简单的字符串串匹配。
const char *foo = "Quick brown fox";
const char *bar = "brown";
printf("%d\n", strstr(foo, bar) - foo); // Displays "6"
当你使用C ++时,还有std::string::find()
:
std::string foo = "Quick brown fox";
std::string bar = "brown";
std::cout << foo.find(bar) << "\n"; // Displays "6"
答案 1 :(得分:1)
您可以使用std::string::find()
您也可以使用std::strstr()
作为另一种选择,您可以使用动态编程或回溯方法实现此功能(动态编程具有更高的性能)。
当然,我知道这个问题不是算法问题,但我认为这个答案很有用