c# - 写正则表达式 c#
问题描述
写白俄罗斯出租车号码的正则表达式
1)地区代码(1到7的一个数字);
2)三个大写拉丁字母。对于“7”区域(明斯克),使用 TAX、TBX、TEX 组合,对于其他区域,当前仅使用 TAX、TBX;
3)单一空间;
4) 1 到 9999 的四位数字,前导零。
解决方案
你几乎明白了。尝试类似的东西
using System;
using System.Text.RegularExpressions;
public class Program
{
public static void Main()
{
string text = "1TAX 1234\r\n7TEX 9876\r\n5TEX 9876\r\n4TBX 9876";
string pattern = @"^(?:(?:[1-6]T[AB]X)|(?:7T[ABE]X))\s\d{4}";
Regex r = new Regex(pattern, RegexOptions.Multiline);
foreach (var m in r.Matches(text))
{
Console.WriteLine("> {0}", m.ToString());
}
}
}
推荐阅读
- powershell - 使用 Powershell 和 7zip 通过起始字母将文件放入单独的 .7z
- math - 如何计算(或旋转)垂直于直线的平面中的四个点
- python - 忽略包含某些文本的行的一部分
- json - 构建 JSON 字符串而不在结果集中重复结果
- c++ - 忽略读取数据并关闭套接字
- typescript - 如何在 Typescript 中表达这个函数签名?
- python - For循环跳过重复索引
- excel - 如果满足条件,VBA 在新电子表格中复制特定值
- android - NavigationUI 使用片段参数导航
- mongodb - 在聚合函数中添加限制和跳过后,$lookup 不起作用