首页 新闻 会员 周边

c#提取关键词

0
悬赏园豆:5 [已解决问题] 解决于 2019-07-24 16:54

给定一篇中文文章,要求提取出所有文中的关键词,关键词是2至n(n可以自定义)个相邻的字符组合,不要求语义,并给出出现次数。

天然白的主页 天然白 | 初学一级 | 园豆:1
提问于:2019-05-30 11:15

正则表达式?

刘阿愣是PM 4年前
< >
分享
最佳答案
0

用正则:

string text = "你好,你好吗,你好吗?";
Regex reg1 = new Regex(@"你好");//两个字
if (reg1.IsMatch(text))
{
    var res = reg1.Matches(text);
    Console.WriteLine("【你好】的匹配个数:" + res.Count);
    Console.WriteLine("【你好】的匹配结果:");
    foreach (var item in res)
    {
        Console.WriteLine(item);
    }
}

Regex reg2 = new Regex(@"你好吗");//三个字
if (reg2.IsMatch(text))
{
    var res = reg2.Matches(text);
    Console.WriteLine("【你好吗】的匹配个数:" + res.Count);
    Console.WriteLine("【你好吗】的匹配结果:");
    foreach (var item in res)
    {
        Console.WriteLine(item);
    }
}

Console.ReadKey();
收获园豆:5
三人乐乐 | 老鸟四级 |园豆:4819 | 2019-05-30 11:58

正解

BoneMan | 园豆:238 (菜鸟二级) | 2019-06-24 11:50
其他回答(1)
0

一个循环不就好了么?

string[] method(string str, int n){
    for(var i=0;i>str.lenght;i++){
        for(var j=2;j<=n;j++){
            arr.add(str.skip(i).take(j).tostring())
        }
    }
}
czd890 | 园豆:14412 (专家六级) | 2019-05-30 11:28

大神,在看看题

支持(0) 反对(0) 天然白 | 园豆:1 (初学一级) | 2019-05-30 11:37
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册