Regex提取包含数字的单词
本文关键字:单词 数字 包含 提取 Regex | 更新日期: 2023-09-27 18:21:32
我需要提取包含数字的单词。
例如:-
输入-威默路3909B号。尼亚加拉大瀑布。NY 14305
输出-3909B和14305
使用此正则表达式:
'w*'d'w*
请参阅此处的操作:http://regexr.com?2vqui
基本表达式应该是:
-
(?<=^|)(?=[^]*''d)[^]+
- 或-
-
(''w*''d[''w''d]+)
并在C#中使用:
var matches = Regex.Matches(input, @"('w*'d['w'd]+)");
foreach (Match match in matches){
var word = match.Value;
}
...
var matches = Regex.Matches(input, @"(?<=^| )(?=[^ ]*'d)[^ ]+");
foreach (Match match in matches){
var word = match.Value;
}
这是我能想到的最简单的正则表达式,可以处理字母和数字混合的单词:
('w*'d['w'd]+)
所以这将匹配你想要的单词,加上它将匹配"abc123xyz"。你自己试试吧。
您的意思是要提取数字ey单词:
var matches = Regex.Matches(input, @"'d'w*");
foreach (Match match in matches) {
var numWord = match.Value; // 3909B, etc.
}