diff --git a/lodash.js b/lodash.js
index 5e25bbfde..569218e68 100644
--- a/lodash.js
+++ b/lodash.js
@@ -54,7 +54,7 @@
var oldDash = window._;
/** Used to detect delimiter values that should be processed by `tokenizeEvaluate` */
- var reComplexDelimiter = /[-+=!~*%&^<>|{(\/]|\[\D|\b(?:delete|in|instanceof|new|typeof|void)\b/;
+ var reComplexDelimiter = /[-?+=!~*%&^<>|{(\/]|\[\D|\b(?:delete|in|instanceof|new|typeof|void)\b/;
/** Used to match HTML entities */
var reEscapedHtml = /&(?:amp|lt|gt|quot|#x27);/g;
diff --git a/test/test.js b/test/test.js
index dceb709da..61b7e8475 100644
--- a/test/test.js
+++ b/test/test.js
@@ -1499,6 +1499,11 @@
var compiled = _.template('');
equal(compiled({ 'type': 1 }), '');
});
+
+ test('should work with "interpolate" delimiters containing ternary operators', function() {
+ var compiled = _.template('<%= value ? value : "b" %>');
+ equal(compiled({ 'value': 'a' }), 'a');
+ });
}());
/*--------------------------------------------------------------------------*/