📄 xcorr4text.html
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd"><html><head> <title>Description of xcorr4text</title> <meta name="keywords" content="xcorr4text"> <meta name="description" content="XCORR Cross correlation of two text strings"> <meta http-equiv="Content-Type" content="text/html; charset=big5"> <meta name="generator" content="m2html © 2003 Guillaume Flandin"> <meta name="robots" content="index, follow"> <link type="text/css" rel="stylesheet" href="../m2html.css"></head><body><a name="_top"></a><div><a href="../index.html">Home</a> > <a href="index.html">dcpr</a> > xcorr4text.m</div><!--<table width="100%"><tr><td align="left"><a href="../index.html"><img alt="<" border="0" src="../left.png"> Master index</a></td><td align="right"><a href="index.html">Index for dcpr <img alt=">" border="0" src="../right.png"></a></td></tr></table>--><h1>xcorr4text</h1><h2><a name="_name"></a>PURPOSE <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2><div class="box"><strong>XCORR Cross correlation of two text strings</strong></div><h2><a name="_synopsis"></a>SYNOPSIS <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2><div class="box"><strong>function [out, matchedStr] = xcorr4text(a, b, plotOpt) </strong></div><h2><a name="_description"></a>DESCRIPTION <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2><div class="fragment"><pre class="comment">XCORR Cross correlation of two text strings Usage: [out, matchedStr] = xcorr4text(a, b, plotOpt) a: input string 1 b: input string 2 out: cross correlation (a vector of length length(a)+length(b)-1) Type "xcorr4text" for a self-demo.</pre></div><!-- crossreference --><h2><a name="_cross"></a>CROSS-REFERENCE INFORMATION <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2>This function calls:<ul style="list-style-image:url(../matlabicon.gif)"></ul>This function is called by:<ul style="list-style-image:url(../matlabicon.gif)"></ul><!-- crossreference --><h2><a name="_subfunctions"></a>SUBFUNCTIONS <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2><ul style="list-style-image:url(../matlabicon.gif)"><li><a href="#_sub1" class="code">function selfdemo</a></li></ul><h2><a name="_source"></a>SOURCE CODE <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2><div class="fragment"><pre>0001 <a name="_sub0" href="#_subfunctions" class="code">function [out, matchedStr] = xcorr4text(a, b, plotOpt)</a>0002 <span class="comment">%XCORR Cross correlation of two text strings</span>0003 <span class="comment">% Usage:</span>0004 <span class="comment">% [out, matchedStr] = xcorr4text(a, b, plotOpt)</span>0005 <span class="comment">% a: input string 1</span>0006 <span class="comment">% b: input string 2</span>0007 <span class="comment">% out: cross correlation (a vector of length length(a)+length(b)-1)</span>0008 <span class="comment">%</span>0009 <span class="comment">% Type "xcorr4text" for a self-demo.</span>0010 0011 <span class="comment">% Roger Jang, 19981227, 20080915</span>0012 0013 <span class="keyword">if</span> nargin<1, <a href="#_sub1" class="code" title="subfunction selfdemo">selfdemo</a>; <span class="keyword">return</span>, <span class="keyword">end</span>0014 0015 a = a(:).';0016 b = b(:).';0017 m = length(a);0018 n = length(b);0019 A = a(ones(1,n), :).';0020 B = b(ones(1,m), :);0021 matched = A==B;0022 C = [zeros(m,m-1) matched zeros(m,m-1)];0023 out = zeros(1, n+m-1);0024 <span class="keyword">for</span> i = 1:n+m-1,0025 out(i) = sum(C((1:m)+((i:i+m-1)-1)*m));0026 <span class="keyword">end</span>0027 0028 <span class="keyword">if</span> nargout==20029 <span class="keyword">for</span> i = 1:n+m-1,0030 tmp = C((1:m)+((i:i+m-1)-1)*m);0031 index = find(tmp==1);0032 matchedStr{i} = a(index);0033 <span class="keyword">end</span>0034 <span class="keyword">end</span>0035 0036 <span class="keyword">if</span> plotOpt0037 stem(out);0038 set(gca, <span class="string">'xtick'</span>, 1:n+m-1);0039 set(gca, <span class="string">'xticklabel'</span>, [b'; 32*ones(m-1,1)]);0040 index = find(out);0041 <span class="keyword">for</span> i = 1:length(index),0042 text(index(i), out(index(i)), <span class="keyword">...</span>0043 [<span class="string">'matched: '</span> matchedStr{index(i)} <span class="string">'\rightarrow'</span>], <span class="keyword">...</span>0044 <span class="string">'horizontal'</span>, <span class="string">'right'</span>);0045 <span class="keyword">end</span>0046 title_str = sprintf(<span class="string">'String A: ''%s'', string B: ''%s'''</span>, a, b);0047 title(title_str);0048 axis([-inf inf -inf max(out)+1]);0049 <span class="keyword">end</span>0050 0051 <span class="comment">% ====== Self demo ======</span>0052 <a name="_sub1" href="#_subfunctions" class="code">function selfdemo</a>0053 a = <span class="string">'abcde'</span>;0054 b = <span class="string">'xaxabcxabxabcdxabcdexa'</span>;0055 [out, matchedStr] = feval(mfilename, a, b, 1);</pre></div><hr><address>Generated on Thu 30-Oct-2008 12:53:56 by <strong><a href="http://www.artefact.tk/software/matlab/m2html/">m2html</a></strong> © 2003</address></body></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -