如何在不复制逗号或任何其他标点符号的情况下将文本与单词分开

本文关键字:情况下 文本 单词 标点符号 其他 复制 任何 | 更新日期: 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]+")会将字符串与标点符号和空格分开。

相关文章: