@Override
  public void selectByVisibleText(String text) {
    String[] methods = StringUtil.getSplitByFirst(text, ":");
    if (methods != null) {
      String type = methods[0];
      String value = methods[1];
      if ("regexp".equals(type)) {
        Pattern pattern = Pattern.compile(value);
        for (WebElement o : getOptions()) {
          if (pattern.matcher(o.getText()).matches()) {
            setSelected(o);
            if (!isMultiple()) {
              return;
            }
          }
        }
      }
    }
    super.selectByVisibleText(text);
  }