除去字串中的重复词,生成索引字符串,字符串参数为已经分词处理的串

  //--------------------------------------------------
  function getindextext($okstr,$ilen=-1)
  {
    if($okstr=="") return "";
    $ws = explode(" ",$okstr);
    $okstr = "";
    $wks = "";
    foreach($ws as $w)
    {
      $w = trim($w);
      //排除小于2的字符
      if(strlen($w)<2) continue;
      //排除数字或日期
      if(!ereg("[^0-9:-]",$w)) continue;
      if(strlen($w)==2&&ord($w[0])>0x80) continue;
      if(isset($wks[$w])) $wks[$w]++;
      else $wks[$w] = 1;
    }
    if(is_array($wks))
    {
      arsort($wks);
      if($ilen==-1)
      { foreach($wks as $w=>$v) $okstr .= $w." "; }
      else
      {
        foreach($wks as $w=>$v){
          if((strlen($okstr)+strlen($w)+1)<$ilen) $okstr .= $w." ";
          else break;
        }
      }
    }
    return trim($okstr);
  }?>

时间: 2024-09-27 04:13:20

除去字串中的重复词,生成索引字符串,字符串参数为已经分词处理的串的相关文章

php除去字串中的重复词,生成索引字符串

/php除去字串中的重复词,生成索引字符串,字符串参数为已经分词处理的串   //--------------------------------------------------   function getindextext($okstr,$ilen=-1)   {     if($okstr=="") return "";     $ws = explode(" ",$okstr);     $okstr = "";

除去字串中的重复词,生成索引字符串

  //--------------------------------------------------   function GetIndexText($okstr,$ilen=-1)   {     if($okstr=="") return "";     $ws = explode(" ",$okstr);     $okstr = "";     $wks = "";     foreach(

编程列出一个字符串的全字符组合情况,原始字符串中没有重复字符 例如: 原始字符串是&amp;amp;quot;abc&amp;amp;quot;,打印得到下列所有组合情况 &amp;amp;quot;a&amp;amp;quot; &amp;amp;quot;b&amp;amp;quot; &amp;amp;quot;c&amp;amp;quot; &amp;amp;quot;ab&amp;amp;quot; &amp;amp;quot;b

问题描述 请问大神这段代码哪里错了package备份;importjava.io.*;importjava.util.*;publicclasspllll备份{publicstaticvoidmain(String[]args)throwsException{BufferedReaderbr=newBufferedReader(newInputStreamReader(System.in));Stringp=br.readLine();dy(br,p);}publicstaticvoiddy(B

算法 全排列 动态规划-有一个由数字1,2,3,4,5,6,7,8,9组成的数字串(长度不超过200),问如何将M个加号插入这个串中

问题描述 有一个由数字1,2,3,4,5,6,7,8,9组成的数字串(长度不超过200),问如何将M个加号插入这个串中 所得的算术表达式的值最小,加号不能加在数字串的最前面或最末尾,也不应有两个或两个以上的加号相邻 解决方案 什么语言啊?没分给吗? 解决方案二: 什么语言啊?没分给吗? 解决方案三: VB.NET假定你的字符串变量名是TXTDIM TXT1DIM NEWTXT AS STRINGDIM A AS INT32FOR A=1 TO LEN(TXT)IF A=LEN(TXT) THEN

字符串-linux shell提取字串中的字串

问题描述 linux shell提取字串中的字串 有如下字符串sdfsdf3.45dfsadfa>2.35< 怎么提取其中的3.45和2.35? 解决方案 我自己开个头吧,我知道用grep命令$ echo sdfsdf3.45dfsadfa>2.35< | grep -Eo '[0-9].[0-9]+'$ 3.45$ 2.35还有一种是用awk但,只能提取最右边的一个,即2.35$ echo sdfsdf3.45dfsadfa>2.35< | awk '{print g

js 除去字符串中的重复字符的正则表达

  <html> <head> <title>利用正则表达法除去字符串中的重复字符</title> </head> <body> <script language="网页特效"> str = "google" str1 = str.replace(/(.).*/g,"$1") document.write(str + "<br>")

PHP查找数值数组中不重复最大和最小的10个数的方法

  这篇文章主要介绍了PHP查找数值数组中不重复最大和最小的10个数的方法,涉及php中array_unique与array_slice方法的使用技巧,非常具有实用价值,需要的朋友可以参考下 本文实例讲述了PHP查找数值数组中不重复最大和最小的10个数的方法.分享给大家供大家参考.具体如下: 1. php代码如下: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 //随机生成1万个元素的数组 for($i=0;$i<10000;$i++){ $ary[]=rand(1,10000

看实例学VFP:去除查询结果中的重复记录

在看实例学VFP:将查询结果输出为表或文本文件以及之前的几个关于select语句应用的例子中,组合框控件Combo1的数据方面的属性我们是这样设置的:RowSourceType属性值设置为"1-值",RowSource属性值设置为"部门,性别,学历",即在设计时已经将组合框控件的数据源固定了.但这种处理方式在有的情况下是不合理的,比如本文要做这样一个例子:希望在运行时可以在组合框控件里选择"部门",按"部门"来查询.我们已经知

android-Android string中msgid是怎么生成的?

问题描述 Android string中msgid是怎么生成的? 手动 msgid是怎么生成的,和android国际化有关系! 解决方案 随机生成的,随机的目的是为了不重复.然后每个字符串有个id,便于翻译. 解决方案二: 系统生成,我们用就可以了.就像我们每个人都有一个身份证号.