c# - 使用正则表达式测试特定字符串
问题描述
我将使用字符串数组测试 dd / mm / yyyy xx-xxxx-x xxx-xxx 形式的字符串,我用来定义正则表达式形式,但我认为格式未正确声明
Regex rgx1 = new Regex(@"^d{2}\/\d{2}\/\d{4}\t[A-Z]\d{2}\-\d{4}\-\[A-Z0-9]\d{1}\t[A-Z]\d{3}\-\[A-Z]\d{3}$");
Match FormatS = rgx1.Match(tab[i]);
if ( FormatS.Success)
{
Console.WriteLine(tab[i]);
Console.ReadLine();
}
解决方案
根据您对示例输入的评论,这有效:
Regex rgx1 = new Regex(@"^\d{2}/\d{2}/\d{4}\s[A-Z]{2}-\d{4}-[A-Z0-9]{1}\s[A-Z]{3}-[A-Z]{3}$");
我发现的问题:
\[
而不是[
在两个地方d
而不是\d
一开始\t
而不是\s
(或者只是一个空格也可以)- 一些不必要的
\d
我还删除了一些不必要的转义标记,但是……那些并不重要。
推荐阅读
- php - 无法解析的依赖解析[参数#1[
$var]] 类 App\View\Components\Header(View:laracurd\resources\views\welcome.blade.php) - android - 如何将 TextView 相对于另一个居中 - Android Studio
- firebase - 如何在 Recycler View 中实现多选,但为 firebase 数据库项目创建的回收器适配器来自 Recyler 上的服务器
- excel - 当我在 Excel 2010 中刷新我的数据透视表时,条件格式在除标题单元格之外的所有单元格中消失
- javascript - 当我单击使用 Tampermonkey 添加到电子邮件的按钮时,如何阻止 gmail 打开电子邮件?
- gtk - 样式化 Gtk.Label 对象
- r - 如何在R中添加分类变量时组合多列
- android - 更改 nativescript android api 版本
- python - Collections.counter() 计算字母而不是单词
- arrays - 为什么动态数组包含 null 而不是实际的字符串