本文整理汇总了C++中item::split_tags方法的典型用法代码示例。如果您正苦于以下问题:C++ item::split_tags方法的具体用法?C++ item::split_tags怎么用?C++ item::split_tags使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类item
的用法示例。
在下文中一共展示了item::split_tags方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: do_match
bool do_match(const item &n) {
if (m_field.size()) {
string fv;
if (m_field == "tags") {
item t;
t.tags(m_value);
auto tt = t.split_tags();
auto tags = n.split_tags();
if (m_exact) return tt == tags;
for (auto it = tt.begin(); it != tt.end(); ++it) {
if (!tags.count(*it)) return false;
}
return true;
}
if (m_field == "username") fv = n.username();
if (m_field == "url") fv = n.url();
if (m_field == "notes") fv = n.notes();
if (m_exact) return fv == m_value;
if (m_prefix) return fv.size() >= m_value.size() && fv.substr(0, m_value.size()) == m_value;
return fv.find(m_value) != string::npos;
}
return n.username().find(m_value) != string::npos
|| n.url().find(m_value) != string::npos
|| n.tags().find(m_value) != string::npos
|| n.notes().find(m_value) != string::npos;
}