c# - C# - 将句子分成标记
问题描述
将句子拆分为标记。例如,这对于搜索引擎很有用。
有几个规则:
引号中的多个单词必须包含在同一个标记中
这个“巨大的测试”是没有意义的=>这个,巨大的测试,是,没有意义的
连字符的单词也包含在同一个标记中。用几个连字符(破折号)书写的单词,或者在开头或结尾有一个连字符的单词被放置在单独的标记中。
Suzie Smith-Hopper 测试--连字符 => Suzie,Smith-Hopper,test,连字符。
我的尝试:
label.Text = "";
string s = "I like-it 'very very'";
string[] arr = Regex.Split(s, @"(\s)|(')");
foreach (var item in arr)
{
label.Text += item + ", ";
}
但这对我不起作用
解决方案
以下当然不是有效的,但它会工作:
步骤 1. 解析文件(或输入字符串),并将用引号括起来的短语中的所有空格替换为某个字符,例如“+”。至于多连字符,请用空格(' ')替换它们。
步骤 2. 按空格 ' ' 分割。任何“可标记”的物品都将是一个标记……我认为。
Step 3. 返回,替换所有特殊字符(如上面的'+'),并用空格('')替换。数组中的每个项目都代表一个令牌。
推荐阅读
- c# - 如何从控制台应用程序向 webapi 发送请求
- swagger - jsend 协议 Swagger 定义
- android - 颤动中的异步和等待
- css - 在 ios 浏览器中看不到带有字母间距的材料图标
- azure-functions - 未找到 - 获取 https://registry.npmjs.org/functionscdn.azureedge.net - 未找到
- linux - 如何让 vi/vim 为给定的文件扩展名执行“写时重写过滤器”?
- c# - 如何通过结果 WebApi Core 发送消息和状态?
- r - ggplotly 和 geom_text vjust/hjust - 如何实现这个静态图?
- r - 使用 group_by 将数据分成五分位数
- google-apps-script - Google Apps 脚本 - 使用 Google Drive ID 将图像插入电子表格单元格