搜索RegEx以将文本拆分为单词
本文关键字:拆分 单词 文本 RegEx 搜索 | 更新日期: 2023-09-27 18:23:40
我正在搜索一个RegularExpression来拆分它单词中的文本。我已经测试了
Regex.Split(text, @"'s+")
但这给了我一个的例子
this (is a) text. and
this
(is
a)
text
and
但我在寻找一个解决方案,它只给我单词——没有(,)。等它还应该像一样拆分文本
end.begin
总之。
试试这个:
Regex.Split(text, @"'W+")
'W
是'w
的对应词,意思是字母数字。
与其拆分,不如匹配单词。
如果使用Split
(Regexident建议使用'W
),则可以在开头和结尾获得一个额外的字符串。例如,输入字符串(a b)
将为提供四个输出:""
、"a"
、"b"
和另一个""
,因为您使用(
和)
作为分隔符
你可能想做的就是匹配单词。你可以这样做:
Regex.Matches(text, "''w+").Cast<Match>().Select(match => match.Value)
然后你只得到单词,在开头和结尾没有多余的空字符串。
你可以做:
var text = "this (is a) text. and";
// to replace unwanted characters with space
text = System.Text.RegularExpressions.Regex.Replace(text, "[(),.]", " ");
// to split the text with SPACE delimiter
var splitted = text.Split(null as char[], StringSplitOptions.RemoveEmptyEntries);
foreach (var token in splitted)
{
Console.WriteLine(token);
}
参见本Demo