当前位置: 首页>>代码示例>>C++>>正文


C++ LString::split方法代码示例

本文整理汇总了C++中LString::split方法的典型用法代码示例。如果您正苦于以下问题:C++ LString::split方法的具体用法?C++ LString::split怎么用?C++ LString::split使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在LString的用法示例。


在下文中一共展示了LString::split方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: setRendNames

void RendPropAnim::setRendNames(LString val)
{
  // invalidate uid cache
  m_rendPtrList.clear();
  m_rendNameList.clear();

  // extract comma-separated name list
  std::list<LString> ls, tmpl;
  val.split(',', ls);
  
  BOOST_FOREACH (const LString &elem, ls) {
    LString sobj, srend;
    int spos = elem.indexOf('/');
    if (spos<0) {
      srend = elem.trim();
      if (!srend.isEmpty())
        tmpl.push_back(srend);
    }
    else {
      sobj = elem.substr(0, spos).trim();
      srend = elem.substr(spos+1).trim();
      if (!sobj.isEmpty() && !srend.isEmpty())
        tmpl.push_back(sobj+"/"+srend);
    }

    m_rendNameList.push_back(nmlist_t::value_type(sobj, srend));
  }
开发者ID:CueMol,项目名称:cuemol2,代码行数:27,代码来源:RendPropAnim.cpp

示例2: renum

//static
LScrMatrix4D *LScrMatrix4D::fromStringS(const LString &src)
{
  if (src.equalsIgnoreCase("(identity)"))
    return MB_NEW LScrMatrix4D();

  LString renum("\\s*(\\S+)\\s*");

  // remove parentheses
  LRegExpr re1("\\((.+)\\)");
  if (!re1.match(src) || re1.getSubstrCount()<1+1) {
    // ERROR!!
    LString msg = LString::format("cannot convert \"%s\" to matrix", src.c_str());
    MB_THROW(RuntimeException, msg);
    return NULL;
  }

  LString val = re1.getSubstr(1);
  std::list<LString> ls;
  val.split(',', ls);
  if (ls.size()!=16) {
    // ERROR!!
    LString msg = LString::format("cannot convert \"%s\" to matrix", src.c_str());
    MB_THROW(RuntimeException, msg);
    return NULL;
  }

  double d;
  int i=1;
  LScrMatrix4D *pRes = MB_NEW LScrMatrix4D();
  BOOST_FOREACH (LString e, ls) {
    if (!e.toDouble(&d)) {
      // ERROR!!
      delete pRes;
      LString msg = LString::format("cannot convert \"%s\" to matrix", src.c_str());
      MB_THROW(RuntimeException, msg);
      return NULL;
    }
    pRes->Matrix4D::ai(i) = d;
    ++i;
  }

  return pRes;
}
开发者ID:CueMol,项目名称:cuemol2,代码行数:44,代码来源:LScrMatrix4D.cpp


注:本文中的LString::split方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。