matlab用正向最大匹配算法实现中文分词!急!!! 10
不知为什么运行很久却得不出分词结果,代码如下:functions2=divide(s1)%导入词典loadDictionary.mat;%词典最大词长Maxlen=max...
不知为什么运行很久却得不出分词结果,代码如下:
function s2 = divide(s1)
%导入词典
load Dictionary.mat;
%词典最大词长
Maxlen=max(cellfun(@length,Dictionary));
%% 按标点粗分
%标点符号的正则表达式
pun='[\,\。\、\;\:\!\?\“\”\‘\’\(\)\《\》\<\>\……\·]';
F=regexp(s1,pun,'split')
%% 最大匹配法
sentence=[];
word=[];
for i=1:length(F)
sentence=cell2mat(F(1,i));
sentence_len=length(sentence);
maxlen=min(Maxlen,sentence_len);
while(sentence_len>0)
word=sentence(1:maxlen);
word_len=length(word);
meet=false;
while(~meet&&word_len>0)
if(ismember(word,Dictionary))
s2=[word,'/',s2];
sentence=sentence(word_len:sentence_len);
meet=true;
else
if(word_len==1)
s2=[word,'/',s2];
sentence=sentence(word_len:sentence_len);
meet=true;
else
word=word(1:word_len);
end
end
end
end
end 展开
function s2 = divide(s1)
%导入词典
load Dictionary.mat;
%词典最大词长
Maxlen=max(cellfun(@length,Dictionary));
%% 按标点粗分
%标点符号的正则表达式
pun='[\,\。\、\;\:\!\?\“\”\‘\’\(\)\《\》\<\>\……\·]';
F=regexp(s1,pun,'split')
%% 最大匹配法
sentence=[];
word=[];
for i=1:length(F)
sentence=cell2mat(F(1,i));
sentence_len=length(sentence);
maxlen=min(Maxlen,sentence_len);
while(sentence_len>0)
word=sentence(1:maxlen);
word_len=length(word);
meet=false;
while(~meet&&word_len>0)
if(ismember(word,Dictionary))
s2=[word,'/',s2];
sentence=sentence(word_len:sentence_len);
meet=true;
else
if(word_len==1)
s2=[word,'/',s2];
sentence=sentence(word_len:sentence_len);
meet=true;
else
word=word(1:word_len);
end
end
end
end
end 展开
2015-07-14
展开全部
SqlConnection con = new SqlConnection
con.Open();
string sqlstr = "sql语句";
SqlDataAdapter da = new SqlDataAdapter(sqlstr, con);
DataSet ds= new DataSet();
da.Fill(ds);
dataGridView1.DataSource = ds.Tables[0];
con.Close();
con.Open();
string sqlstr = "sql语句";
SqlDataAdapter da = new SqlDataAdapter(sqlstr, con);
DataSet ds= new DataSet();
da.Fill(ds);
dataGridView1.DataSource = ds.Tables[0];
con.Close();
追问
您能解释一下吗?并不能看懂。。。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询