【问题标题】:How to separate two words in hangman game?如何在刽子手游戏中分隔两个单词?
【发布时间】:2021-01-30 12:26:32
【问题描述】:

我见过很多与刽子手游戏相关的问题,包括与我的问题相同的问题不是针对 VB.NET,而是针对其他一些编程语言。我有生成破折号(_)的代码,但不知道如何分隔两个单词(删除单词之间的单个破折号)。

这是我用来在单词中生成破折号的代码。我希望有一种方法可以让生成器代码检测空格和分隔单词,而无需做完全不同的事情。

    Public Class Form1
    Dim SecretWord As String
    Dim WordLength As Integer
    Dim WordCount As Integer
    Dim Guesses As Integer = 0
    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        Label1.Text = Nothing
        SecretWord = TextBox1.Text
        WordLength = SecretWord.Length - 1
        For position As Integer = 0 To WordLength
            Label1.Text = Label1.Text & " _ "
        Next
    End Sub
End Class

我还没有尝试任何东西,主要是因为我不擅长 VB.NET。对不起,我的英语和语法很差。

【问题讨论】:

  • 是作业吗?
  • 我还没有尝试任何东西 - 那你将如何成功?
  • 这不是真正的家庭作业,而是我自己想做的事情
  • Dim SecretWord As String() = TextBox1.Text.Trim().Split(New Char() {"_"}, StringSplitOptions.RemoveEmptyEntries) 然后你可以在for循环中遍历每个SecretWord

标签: vb.net


【解决方案1】:

如果你想知道字符串中某个位置的字符是什么,你可以把字符串当作一个数组,用一个索引器:

Dim str = "Hello world"
Dim letter = str(1) 'letter e

索引从 0 开始运行

因此,当您循环播放时,您可以将角色拉出来并查看它,而不是总是制作_

    For position As Integer = 0 To WordLength
        If SecretWord(position) <> " "c Then 'if the char at this position is not a space
          Label1.Text = Label1.Text & " _ "
        Else
          'what do you want to put in if it IS a space?
        End If
    Next

【讨论】:

  • 感谢您的帮助!我会尝试使用这个!
  • @LilProgrammer 在 Stack Overflow 上感谢人们的方式是通过单击答案左侧的复选标记(勾号)来接受他们的答案。这将帮助未来的读者并为您赢得几分。如果您使用tour,您就会知道这一点。
猜你喜欢
  • 1970-01-01
  • 2015-05-29
  • 1970-01-01
  • 1970-01-01
  • 2019-08-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多