Error unmatched quote I cannot find


Author
Message
Dave
Dave
Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)
Group: Administrators
Posts: 13K, Visits: 109K
brittdv - 1/6/2026
Hi,

Probably a studpid question, but get the following error for the code below: return (“< 5”) Unmatched quote.
For both keyRemindersMagnitudeLeft & keyRemindersMagnitudeRight

Does anyone know what I need to change?
Thank you!

<expressions>
/ keyRemindersParityLeft = {
    if (parameters.responseKeyEven == parameters.responseKeyLeft){
        return ("EVEN");
    } else {
        return ("ODD");
    }
}
/ keyRemindersMagnitudeLeft = {
    if (parameters.responseKeySmaller == parameters.responseKeyLeft){
        return ("&lt; 5");
    } else {
        return ("&gt; 5");
    }
}
</expressions>

<expressions>
/ keyRemindersParityRight = {
    if (parameters.responseKeyEven == parameters.responseKeyRight){
        return ("EVEN");
    } else {
        return ("ODD");
    }
}

/ keyRemindersMagnitudeRight = {
    if (parameters.responseKeySmaller == parameters.responseKeyRight){
        return ("&lt; 5");
    } else {
        return ("&gt; 5");
    }
}
</expressions>

Since the semicolon ; is the statement separator / terminator in expressions, the ; in &lt; and &gt; throws off the expression parser. It thinks the expression ends at &lt and &gt respecively, and there is no matching quote.

The trick to get this to work is to use another level of indirection by definiing the HTML entities you want to insert as variables.

<expressions>
/ keyRemindersParityLeft = {
if (parameters.responseKeyEven == parameters.responseKeyLeft){
return ("EVEN");
} else {
return ("ODD");
}
}
/ keyRemindersMagnitudeLeft = {
if (parameters.responseKeySmaller == parameters.responseKeyLeft){
return ("<%parameters.lt%> 5");
} else {
return ("<%parameters.gt%> 5");
}
}
</expressions>

<expressions>
/ keyRemindersParityRight = {
if (parameters.responseKeyEven == parameters.responseKeyRight){
return ("EVEN");
} else {
return ("ODD");
}
}

/ keyRemindersMagnitudeRight = {
if (parameters.responseKeySmaller == parameters.responseKeyRight){
return ("<%parameters.lt%> 5");
} else {
return ("<%parameters.gt%> 5");
}
}
</expressions>

<parameters>
/ lt = "&lt;"
/ gt = "&gt;"
/ responseKeyEven = 1
/ responseKeySmaller = 2
/ responseKeyRight = 1
/ responseKeyLeft = 2
</parameters>

<block myBlock>
/ trials = [1=myTrial]
</block>

<trial myTrial>
/ stimulusframes = [1=myText]
/ validresponse = (" ")

</trial>

<text myText>
/ items = ("<p><%expressions.keyRemindersMagnitudeLeft%>, <%expressions.keyRemindersMagnitudeRight%></p>
<p><%expressions.keyRemindersParityLeft%>, <%expressions.keyRemindersParityRight%></p>")
</text>

brittdv
brittdv
New Member (21 reputation)New Member (21 reputation)New Member (21 reputation)New Member (21 reputation)New Member (21 reputation)New Member (21 reputation)New Member (21 reputation)New Member (21 reputation)New Member (21 reputation)
Group: Forum Members
Posts: 4, Visits: 31
Hi,

Probably a studpid question, but get the following error for the code below: return (“&lt; 5”) Unmatched quote.
For both keyRemindersMagnitudeLeft & keyRemindersMagnitudeRight

Does anyone know what I need to change?
Thank you!

<expressions>
/ keyRemindersParityLeft = {
    if (parameters.responseKeyEven == parameters.responseKeyLeft){
        return ("EVEN");
    } else {
        return ("ODD");
    }
}
/ keyRemindersMagnitudeLeft = {
    if (parameters.responseKeySmaller == parameters.responseKeyLeft){
        return ("&lt; 5");
    } else {
        return ("&gt; 5");
    }
}
</expressions>

<expressions>
/ keyRemindersParityRight = {
    if (parameters.responseKeyEven == parameters.responseKeyRight){
        return ("EVEN");
    } else {
        return ("ODD");
    }
}

/ keyRemindersMagnitudeRight = {
    if (parameters.responseKeySmaller == parameters.responseKeyRight){
        return ("&lt; 5");
    } else {
        return ("&gt; 5");
    }
}
</expressions>

GO

Merge Selected

Merge into selected topic...



Merge into merge target...



Merge into a specific topic ID...




Reading This Topic

Explore
Messages
Mentions
Search