The following
example creates match codes for parsed character
data. The program loads locales, determines a parse definition, creates character
elements, creates parsed character values, and creates match codes for the
parse character elements.
/* load locales */
%dqload(dqlocale=(enusa), dqsetuploc=('your-dqsetup-file-here')
/* Determine the parse definition associated with your */
/* match definition. */
data _null_;
parsedefn=dqMatchInfoGet('Name');
call symput('parsedefn', parsedefn);
put 'The parse definition for the NAME match definition is: ' parsedefn;
tokens=dqParseInfoGet(parsedefn);
put 'The ' parsedefn 'parse definition tokens are:' / @5 tokens;
run;
/* Create variables containing name elements. */
data parsed;
length first last $ 20;
first='Scott'; last='James'; output;
first='James'; last='Scott'; output;
first='Ernie'; last='Hunt'; output;
first='Brady'; last='Baker'; output;
first='Ben'; last='Riedel'; output;
first='Sara'; last='Fowler'; output;
first='Homer'; last='Webb'; output;
first='Poe'; last='Smith'; output;
run;
/* Create parsed character values. */
data parsedview;
set parsed;
length delimstr $ 100;
* Insert one token at a time;
delimstr=dqParseTokenPut(delimstr, first, 'Given Name', 'Name');
delimstr=dqParseTokenPut(delimstr, last, 'Family Name', 'Name');
run;
/* Generate match codes using the parsed character values. */
proc dqmatch data=parsedview
out=mcodes;
criteria matchdef='Name' delimstr=delimstr sensitivity=85;
run;
/* Print the match codes. */
proc print data=mcodes;
title 'Look at the match codes from PROC DQMATCH';
run;
Note: This example is available in the SAS Sample Library under the
name DQMCPARS. ![[cautionend]](../../../../common/63294/HTML/default/images/cautend.gif)
Copyright © 2010 by SAS Institute Inc., Cary, NC, USA. All rights reserved.