如何在不复制逗号或任何其他标点符号的情况下将文本与单词分开
本文关键字:情况下 文本 单词 标点符号 其他 复制 任何 | 更新日期: 2023-09-27 18:30:46
我正在使用下一个代码将文本与单词分开,然后将这些单词插入数据库。问题是逗号也被复制了。如何从逗号跳到复制或任何其他标点符号?
var str = reader1.ReadToEnd();
string[] words = str.Split(' '); //Insert all the song words into words named string
string constring1 = "datasource=localhost;port=3306;username=root;password=abc";
using (var conDataBase1 = new MySqlConnection(constring1))
{
conDataBase1.Open();
for (int i = 0; i < words.Length; i++)
{
int numberOfLetters = words[i].ToCharArray().Length; //Calculate the numbers of letters in each word
var songtext = "insert into myproject.words (word_text,word_length) values('" + words[i] + "','" + numberOfLetters + "');"; //Insert words list and length into words table
MySqlCommand cmdDataBase1 = new MySqlCommand(songtext, conDataBase1);
try
{
cmdDataBase1.ExecuteNonQuery();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
}
尝试将拆分线替换为以下内容:
char [] separators = new char[] {' ', ',', '/'};
var words = str.Split(separators, StringSplitOptions.RemoveEmptyEntries).ToArray();
您将获得无标点符号的单词。您可以在separators
数组中添加要去除的其他标点符号。我输入空格、逗号和/
.
str.split("[''p{Punct}''s]+")
会将字符串与标点符号和空格分开。