0

Unicode 有字符类别。有些是字母数字。有些是标点符号。

如果我想知道一个词是否属于关键字呢?

例如,

A,a,b,c 倾向于属于单词。Ƈ,Ǝ,ǟ也是如此,所有汉字也是如此。

像这样的句子

Hello World, I "like" (to)  eat ƇƎǟ and 款开源 ©

有关键字:

Hello
World
I
like
to
eat
ƇƎǟ
款
开
源

这里, , (),© 不是单词字符,因此应该被忽略和使用。

© 也不算标点符号。'©'.IsPunctuation 在 vb.net 中返回 false,但我也想摆脱它。

现在我想制作一个可以将句子拆分为关键字的程序。为此,我需要知道哪些字符是单词字符,哪些不是。

是否有 vb.net 功能?

4

2 回答 2

1

Do it the other way round: use IsLetter for your test. Or better yet, use regular expressions to split your string by words:

Dim str = "Hello World, I ""like"" (to)  eat ƇƎǟ and 款开源 ©"
Dim wordPattern As New Regex("\p{L}+")

For Each match in wordPattern.Matches(str))
    Console.WriteLine(match)
Next

Here, \p{L} matches any word character. However, the above matches “款开源” in a single rather than in separate matches since there is no separator between the characters.

于 2012-12-26T11:33:26.323 回答
-2

您需要处理“键码”
,例如如果您只想要字母 [az]
那么

       for(c>='a' && c<='z'){
       }

或者

       for(c>=97 && C<=122){
        }
于 2012-12-26T07:19:51.287 回答