Tag: regex

在文本框中仅允许使用字母数字

我有一个文本框,应该禁止输入任何特殊字符。 用户可以输入: AZ AZ 0-9 空间 如何使KeyDown事件执行此操作?

正则表达式(C#)对于RFC 4180的CSV

需要通过规范RFC 4180的通用CSV解析器。 有csv文件,包含规范的所有问题: Excel按照规范中的说明打开文件: 任何人都在使用正则表达式进行解析吗? CSV文件 “一个 b C “中,” x ÿ Z”,357 试验;试验,XXX; XXX,152 “TEST2,TEST2”, “XXX2,XXX2”,123 “TEST3” “TEST3”, “XXX3” “XXX3”,987 ,QWE,13 ASD,123, ,, ,123, ,, 123 123 ,, 123123 预期成绩

C#Regex.Split:删除空结果

我正在开发一个导入数千行的应用程序,其中每行都有如下格式: |* 9070183020 |04.02.2011 |107222 |M/S SUNNY MEDICOS |GHAZIABAD | 32,768.00 | 我使用以下正则Regex将行拆分为我需要的数据: Regex lineSplitter = new Regex(@”(?:^\|\*|\|)\s*(.*?)\s+(?=\|)”); string[] columns = lineSplitter.Split(data); foreach (string c in columns) Console.Write(“[” + c + “] “); 这给了我以下结果: [] [9070183020] [] [04.02.2011] [] [107222] [] [M/S SUNNY MEDICOS] [] [GHAZIABAD] [] [32,768.00] [|] 现在我有两个问题。 1.如何删除空结果。 我知道我可以使用: string[] columns = […]

RegEx以结尾

什么是正则表达式来查找以[并以]结尾的字符串。 在[和]之间所有的角色都很好。

通过正则表达式匹配循环

这是我的源字符串: 这是我的Regex Patern: <(?\w+?)><(?\d+?)> 这是我的Item类 class Item { string Name; int count; //(…) } 这是我的物品collections; List OrderList = new List(Item); 我想根据源字符串使用Item填充该列表。 这是我的function。 它不起作用。 Regex ItemRegex = new Regex(@”<(?\w+?)><(?\d+?)>”, RegexOptions.Compiled); foreach (Match ItemMatch in ItemRegex.Matches(sourceString)) { Item temp = new Item(ItemMatch.Groups[“item”].ToString(), int.Parse(ItemMatch.Groups[“count”].ToString())); OrderList.Add(temp); } Threre可能是一些小错误,比如在这个例子中丢失字母,因为这是我在我的应用程序中更容易的版本。 问题是,最后我在OrderList中只有一个Item。 UPDATE 我搞定了。 寻求帮助。

如何将stacktrace行拆分为命名空间,类,方法文件和行号?

C#堆栈跟踪采用以下forms: at Foo.Core.Test.FinalMethod(Doh doh) in C:\Projects\src\Core.Tests\Test.cs:line 21 at Foo.Core.Test.AnotherMethod(Bar bar) at Foo.Core.Test.AMethod() in C:\Projects\src\Core.Tests\Test.cs:line 6 at Foo.Core.Test.c__DisplayClass7.b__6(Object _) in C:\Projects\src\Core.Tests\Test.cs:line 35 如何从每一行检索命名空间,类,方法,文件和行号? 有没有现成的课程要做? 如果不是最好的方法是什么? 正则表达式? 我如何贪婪地匹配命名空间但保留类和方法? 自定义解析器? 会欣赏一些想法和意见。

C# – Regex – 根据特定的命名模式匹配文件名

我有一个应用程序,需要查找并处理遵循非常具体的命名约定的文件,如下所示。 IABC_12345-0_YYYYMMDD_YYYYMMDD_HHMMSS.zip 我无法使用搜索模式看到任何简单的方法,所以我假设在使用更简单的通配符模式生成文件列表后,我必须做类似的事情。 RegEx re = new RegEx(“blah”); foreach(FileInfo fi in Directory.GetFiles(path, “I*.zip”)) { if(re.IsMatch(fi.Name)) //blah blah blah } 这是最好的方法,如果是这样,我将如何形成一个正则表达式来匹配这种文件格式?

如何通过正则表达式删除字符串中的额外返回和空格?

我将HTML代码转换为纯文本。但是有很多额外的返回和空格。如何删除它们?

正则表达式口音不敏感?

我需要一个C#程序中的正则表达式。 我要捕获具有特定结构的文件的名称。 我使用了\ w char类,但问题是这个类与任何重音字符都不匹配。 那怎么办呢? 我只是不想在我的模式中添加最常用的重音字母,因为我们理论上可以在每个字母上加上每个重音。 所以我虽然可能有一种语法,就是说我们想要一个不区分大小写(或者一个考虑重音的类),或者一个“正则表达式”选项,它允许我不区分大小写。 你知道这样的事吗? 非常感谢你

用正则表达式包装的单词

编辑清晰度 – 我知道有多种方法可以在多个步骤中执行此操作,或使用LINQ或vanilla C#字符串操作。 我使用单个正则表达式调用的原因是因为我想练习复杂的正则表达式模式。 – 结束编辑 我正在尝试编写一个将执行自动换行的正则表达式。 它非常接近所需的输出,但我无法让它发挥作用。 Regex.Replace(text, @”(?<=^|\G)(.{1,20}(\s|$))", "$1\r\n", RegexOptions.Multiline) 这是正确包装太长的行的单词,但它已经存在换行符。 输入 “This string is really long. There are a lot of words in it.\r\nHere’s another line in the string that’s also very long.” 预期产出 “This string is \r\nreally long. There \r\nare a lot of words \r\nin it.\r\nHere’s another line \r\nin the […]