<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=us-ascii"><meta name=Generator content="Microsoft Word 15 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Candara;
        panose-1:2 14 5 2 3 3 3 2 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}
p.MsoPlainText, li.MsoPlainText, div.MsoPlainText
        {mso-style-priority:99;
        mso-style-link:"Plain Text Char";
        margin:0in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Candara",sans-serif;
        color:#1F4E79;}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:"Candara",sans-serif;
        color:black;
        font-weight:normal;
        font-style:normal;
        text-decoration:none none;}
span.PlainTextChar
        {mso-style-name:"Plain Text Char";
        mso-style-priority:99;
        mso-style-link:"Plain Text";
        font-family:"Candara",sans-serif;
        color:#1F4E79;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri",sans-serif;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]--></head><body lang=EN-US link="#0563C1" vlink="#954F72"><div class=WordSection1><p class=MsoNormal style='text-autospace:none'><span style='font-family:"Candara",sans-serif;color:#1F4E79;mso-style-textfill-fill-color:#1F4E79;mso-style-textfill-fill-alpha:100.0%'>Gerd,<o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-family:"Candara",sans-serif;color:#1F4E79;mso-style-textfill-fill-color:#1F4E79;mso-style-textfill-fill-alpha:100.0%'><o:p>&nbsp;</o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-family:"Candara",sans-serif;color:#1F4E79;mso-style-textfill-fill-color:#1F4E79;mso-style-textfill-fill-alpha:100.0%'>Thanks for the followup.&nbsp; Somehow I overlooked the Substitution filter that you suggest, which seems like a good idea.&nbsp; It looks like your idea also involves an Oracle Regex expression, with which I am not familiar.&nbsp; I thought about that, but the URL in the Conversion Style Manual for the Regex documentation is no longer correct.&nbsp; (Can someone on this mailing list see that it is corrected?)&nbsp; After a little searching on the Java website, I did not find the documentation, and did not want to take a lot of time looking, so I tried a different tack.&nbsp; After much thought, I came up with a series of commands that seems to produce the desired output.&nbsp; However, it looks like the idea of using the Substitution filter might produce a more elegant solution.&nbsp; I will probably look into that.<o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-family:"Candara",sans-serif;color:#1F4E79;mso-style-textfill-fill-color:#1F4E79;mso-style-textfill-fill-alpha:100.0%'><o:p>&nbsp;</o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-family:"Candara",sans-serif;color:#1F4E79;mso-style-textfill-fill-color:#1F4E79;mso-style-textfill-fill-alpha:100.0%'>Anyway, here is the sequence of commands I came up with that seemed to work.&nbsp; (I live in Indiana.)&nbsp; I have only included the commands that pertain to U. S. and state highways.&nbsp; The motorways (interstates) were more straightforward and a lot easier, because their ref values are much more consistent.&nbsp; The problem I had to overcome with the other highways is that the number of characters in the ref key value can vary, from none, to one or more.<o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-family:"Candara",sans-serif;color:#1F4E79;mso-style-textfill-fill-color:#1F4E79;mso-style-textfill-fill-alpha:100.0%'><o:p>&nbsp;</o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-family:"Candara",sans-serif;color:#1F4E79;mso-style-textfill-fill-color:#1F4E79;mso-style-textfill-fill-alpha:100.0%'># Append extra characters to the end of the ref value to ensure it is more than one character in length, otherwise an error will be returned by the Substring filter later.<o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-family:"Candara",sans-serif;color:#1F4E79;mso-style-textfill-fill-color:#1F4E79;mso-style-textfill-fill-alpha:100.0%'># (&quot;AB&quot; are dummy characters.)<o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-family:"Candara",sans-serif;color:#1F4E79;mso-style-textfill-fill-color:#1F4E79;mso-style-textfill-fill-alpha:100.0%'>highway = * &amp; ref = * { set ref = '$(ref) AB' }<o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-family:"Candara",sans-serif;color:#1F4E79;mso-style-textfill-fill-color:#1F4E79;mso-style-textfill-fill-alpha:100.0%'><o:p>&nbsp;</o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-family:"Candara",sans-serif;color:#1F4E79;mso-style-textfill-fill-color:#1F4E79;mso-style-textfill-fill-alpha:100.0%'># Create the letter_ref key that will determine later what type of symbol to display on the highway.<o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-family:"Candara",sans-serif;color:#1F4E79;mso-style-textfill-fill-color:#1F4E79;mso-style-textfill-fill-alpha:100.0%'>highway = * &amp; ref = * { set letter_ref = '$(ref|substring:0:2)' }<o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-family:"Candara",sans-serif;color:#1F4E79;mso-style-textfill-fill-color:#1F4E79;mso-style-textfill-fill-alpha:100.0%'><o:p>&nbsp;</o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-family:"Candara",sans-serif;color:#1F4E79;mso-style-textfill-fill-color:#1F4E79;mso-style-textfill-fill-alpha:100.0%'># Extract the numbers only from the ref value, which will become the numbers inside the symbols.<o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-family:"Candara",sans-serif;color:#1F4E79;mso-style-textfill-fill-color:#1F4E79;mso-style-textfill-fill-alpha:100.0%'>highway = * &amp; ref = * { set number_ref = '$(ref|part:&quot; :-2)' }<o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-family:"Candara",sans-serif;color:#1F4E79;mso-style-textfill-fill-color:#1F4E79;mso-style-textfill-fill-alpha:100.0%'><o:p>&nbsp;</o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-family:"Candara",sans-serif;color:#1F4E79;mso-style-textfill-fill-color:#1F4E79;mso-style-textfill-fill-alpha:100.0%'>#If the highway is a U. S. highway, use a shield symbol.<o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-family:"Candara",sans-serif;color:#1F4E79;mso-style-textfill-fill-color:#1F4E79;mso-style-textfill-fill-alpha:100.0%'>letter_ref = 'US' {name '${number_ref|highway-symbol:shield:3} ${name}' | '${number_ref|highway-symbol:shield:3}' | '${name}'; addlabel '${name} (${ref})' }<o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-family:"Candara",sans-serif;color:#1F4E79;mso-style-textfill-fill-color:#1F4E79;mso-style-textfill-fill-alpha:100.0%'><o:p>&nbsp;</o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-family:"Candara",sans-serif;color:#1F4E79;mso-style-textfill-fill-color:#1F4E79;mso-style-textfill-fill-alpha:100.0%'># If the highway is a state highway, use a round symbol.<o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-family:"Candara",sans-serif;color:#1F4E79;mso-style-textfill-fill-color:#1F4E79;mso-style-textfill-fill-alpha:100.0%'>letter_ref = 'SR' | letter_ref = 'IN' {name '${number_ref|highway-symbol:round:3} ${name}' | '${number_ref|highway-symbol:round:3}' | '${name}'; addlabel '${name} (${ref})' }<o:p></o:p></span></p><p class=MsoPlainText><span style='color:#1F4E79;mso-style-textfill-fill-color:#1F4E79;mso-style-textfill-fill-alpha:100.0%'><o:p>&nbsp;</o:p></span></p><p class=MsoPlainText>_____________________________________________<o:p></o:p></p><p class=MsoPlainText><o:p>&nbsp;</o:p></p><p class=MsoPlainText>Hi Mark,<o:p></o:p></p><p class=MsoPlainText><o:p>&nbsp;</o:p></p><p class=MsoPlainText>okay, so your problem is not directly related to the highway symbols.<o:p></o:p></p><p class=MsoPlainText>What you need is a simple filter to return the part of a string which starts at the first digit. I guess this can be done with subst plus a regular expression, but I'm not sure how exactly.<o:p></o:p></p><p class=MsoPlainText>Something like<o:p></o:p></p><p class=MsoPlainText>ref=* {set my_ref = ${ref|subst:&quot;[a-zA-Z]*~&gt;&quot;}<o:p></o:p></p><p class=MsoPlainText><o:p>&nbsp;</o:p></p><p class=MsoPlainText><o:p>&nbsp;</o:p></p><p class=MsoPlainText>Gerd<o:p></o:p></p><p class=MsoNormal><span style='font-family:"Candara",sans-serif;color:black'><o:p>&nbsp;</o:p></span></p></div></body></html>