public static boolean hasVariable( String variable ) {
    if ( variable == null ) {
      return false;
    }
    return checkForVariableDelimeters( variable, UNIX_OPEN, UNIX_CLOSE ) || checkForVariableDelimeters( variable,
      WINDOWS_OPEN, WINDOWS_CLOSE ) || checkForVariableDelimeters( variable, HEX_OPEN, HEX_CLOSE );
  }
@Test
  public void testHasVariable() {
    assertTrue( StringUtil.hasVariable( "abc${foo}" ) );
    assertTrue( StringUtil.hasVariable( "abc%%foo%%efg" ) );
    assertTrue( StringUtil.hasVariable( "$[foo]abc" ) );
    assertFalse( "Open and close ordered improperly", StringUtil.hasVariable( "a}bc${foo" ) );
    assertFalse( "Variable is not closed", StringUtil.hasVariable( "abc${foo" ) );
    assertFalse( "Variable is not opened", StringUtil.hasVariable( "abcfoo}" ) );
    assertFalse( "no variable present to substitute", StringUtil.hasVariable( "abc${}foo" ) );
  }