<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
</head>
<body bgcolor="#FFFFFF" text="#000000">
I have been having trouble getting the query function to work. I
have configured geomoose to jive with my data per the documentation,
however I am receiving a parsing error from MapServer when I execute
my query. <br>
<br>
yyparse(): Expression parser error. syntax error<br>
msEvalExpression: Expression parser error. Failed to parse
expression: ("[NAME]" =~ /.*kalamazoo.*/)<br>
<br>
I believe that this is due to changes in MapServer expression
parsing. I found this in the migration guide on MapServer's website:<br>
<br>
<h3>Mapfile Changes - Expression Parsing</h3>
<ul class="simple">
<li>a regex is now deliniated as a string (e.g. ‘^a’ rather than
/^a/)</li>
<li>the regex operator is ~ for case sensitive comparisons and ~*
for case insensitive</li>
<li>case insensitive string comparison operator is =*</li>
</ul>
<p>So this leads me to believe that MapServer is looking for an
expression more like:<br>
</p>
<p>'[NAME]' =* '.*kalamazoo.*' <br>
<br>
or perhaps<br>
</p>
<p>'[NAME]' ~* '.*kalamazoo.*'<br>
</p>
<p><br>
I was hoping for some advice as to whether or not <br>
a). I am on the right track and <br>
b). Suggestions on modifying the query.php code to reflect regex
changes. It seems to me that it would no longer be necessary to
break down the search string into a|b the way that the "icase"
comparators do currently...<br>
</p>
<p><br>
Any advice would be greatly appreciated!<br>
</p>
<p>Thank you, <br>
</p>
<p>Luke <br>
</p>
<br>
<br>
<br>
<br>
<br>
</body>
</html>