0

我想编写一个函数来删除字符串变量中的所有字符,但只留下字母。

例如,如果字符串变量有

“My'na/me*is'S.oph&ia。”

我要显示

“我叫索菲亚”

最简单的方法是什么?

4

2 回答 2

2

将 转换String为字符数组,如下所示:

Dim theCharacterArray As Char() = YourString.ToCharArray()

现在循环并只保留字母,如下所示:

theCharacterArray = Array.FindAll(Of Char)(theCharacterArray, (Function(c) (Char.IsLetter(c))))

最后,将字符转换回 a String,像这样

YourString = New String(theCharacterArray)

注意:此答案是对How to remove all non alphanumeric characters from a string except 的答案的 VB.NET 改编 dash

于 2013-09-23T14:57:36.857 回答
1

所以你想用空格替换'and然后删除所有非字母?*

Dim lettersOnly = From c In "My'na/me*is'S.oph&ia.".
                  Replace("'"c, " "c).Replace("*"c, " "c)
                  Where Char.IsWhiteSpace(c) OrElse Char.IsLetter(c)
Dim result As New String(lettersOnly.ToArray())
于 2013-09-23T15:07:08.987 回答