Tag: regex

需要RegEx从字符串中删除所有字母

我需要一个正则表达式来从字符串(AZ)和(az)移动所有字母表。包括任何类型的特殊字符在内的所有字符都应该保持不变。 我试过@“[^ \ d]”,但它只返回字符串中的数字。 String : asd!@# $%dfdf4545D jasjkd #(*)jdjd56 desired output : !@# $%4545 #(*)56

正则表达式从给定的字符串中提取日期时间

我想通过正则表达式从字符串中提取日期。 字符串:log-bb-2014-02-12-12-06-13-diag 怎么做?

正则表达式以匹配进程参数

我有这个字符串: Process.exe /Switch=Value /Switch=”C:\Path with spaces\file.txt” wrong argument 我想捕捉这些部分: · 1st Match: Process.exe · 2nd Match: /Switch=Value · 3rd Match: /Switch=”C:\Path with spaces\file.txt” · 4th Match: wrong · 5th Match: argument 正则表达式需要用于通用(具有真实参数的过程),不仅适用于这种情况。 这就是我想要的: Dim DebugArguments As String = “HotkeyMaker.exe /Hotkey=Escape /run=””c:\folder with spaces\notepad.exe””” For Each match As Match In Regex.Matches(DebugArguments, “([^\s]+[^””])”) MsgBox(match.Value) Next match

如何在字符串中查找特定句子的所有出现?

假设我有一个这样的字符串: string source = “Today is friday! I’m am having trouble programming this. Today is friday! Tomorrow is saturday. Today is friday!” 我想搜索这个字符串,抓住所有句子,说“今天是星期五!”,然后用我刚发现的句子创建一个新的字符串。 上述字符串的预期结果是: string output = “Today is friday!Today is friday!Today is friday!” 编辑:LINQ不是强制性的。 谢谢!

在c#中生成单词组合数组

我有一个字符串,如“大坏狗”,我怎么能得到一个字符串[]数组,其中包括所有可能的单词/短语组合? 所以,我想返回“大”,“坏”,“狗”,“大坏”,“坏狗”和“大坏狗” – 因此必须尊重原始字符串中单词的顺序。 这是用正则表达式完成的吗?

在c#中使用正则表达式突出显示单词列表

我有一些包含缩写的网站内容。 我有一个公认的网站缩写列表,以及他们的解释。 我想创建一个正则表达式,这将允许我用一些标记替换内容中找到的所有已识别的缩写。 例如: 内容: 这只是对膜的一个小测试,看它是否被拾起。 Deb当然也应该在这里抓住。 缩写: memb =会员; deb =首次亮相; 结果: 这只是[a title =“Member”] memb [/ a]的一个小测试,看看它是否被拾起。 [a title =“Debut”] Deb [/ a]当然也应该在这里抓到。 (这只是简单的示例标记)。 谢谢。 编辑: CraigD的答案几乎就在那里,但也有问题。 我只想匹配整个单词。 我还想保持每个单词被替换的正确大小写,因此deb仍然是deb,而deb仍然是原始文本的Deb。 例如,这个输入: 这只是对memb的一点测试。 而另一个膜,但不是阿曼巴。 Deb当然也应该在这里抓到.deb!

如何从字符串中删除无字母字符?

这是代码: StringBuilder sb = new StringBuilder(); Regex rgx = new Regex(“[^a-zA-Z0-9 -]”); var words = Regex.Split(textBox1.Text, @”(?=(?<=[^\s])\s+\w)"); for (int i = 0; i < words.Length; i++) { words[i] = rgx.Replace(words[i], ""); } 当我正在做Regex.Split() ,单词中也包含字符串,其中包含字符: Daniel> 要么 Hello: 要么 \r\nNew 要么 hello————————— 我需要得到没有所有迹象的单词 所以我试图使用这个循环,但我结束说,有很多地方有””和一些地方只有———————— 我不能在我的代码中使用它作为字符串。

正则表达式以应用退格符

我有一个来自telnet客户端的字符串。 该字符串包含我需要应用的退格字符。 每个退格键应删除一个以前键入的字符。 我正在尝试使用正则表达式在单个替换中执行此操作: string txt = “Hello7\b World123\b\b\b”; txt = Regex.Replace(txt, “.\\\b”, “”, RegexOptions.ECMAScript); 这导致“Hello World12”。 当然,我也希望删除“12”,但它显然与我的表达不符。 在某种程度上,它应该重复替换,直到没有更多的匹配。 有关如何使用单个正则表达式实现此目的的任何想法?

正则表达式匹配多个组

我有一个带有正则表达式的字符串的示例,我正在尝试匹配: 正则表达式: ^\d{3}( [0-9a-fA-F]{2}){3} 要匹配的字符串: 010 00 00 00 我的问题是这个 – 正则表达式匹配并捕获1组 – 字符串末尾的最后一个00 。 但是,我希望它能在最后匹配所有三个00组。 为什么这不起作用? 当然,括号应该表示它们都是平等匹配的吗? 我知道我可以分别输入三个组,但这只是一个更长的字符串的简短提取,所以这将是一个痛苦。 我希望这会提供更优雅的解决方案,但似乎我的理解有点缺乏! 谢谢!

c#正则表达式匹配字符串中的特定索引?

我想测试一个正则表达式是否匹配特定索引处的字符串的一部分(并且仅从该特定索引开始)。 例如,给定字符串“one two 3 4 five”,我想知道,在索引8处,正则表达式[0-9] +将匹配“3”。 RegularExpression.IsMatch和Match都采用起始索引,但是如果需要,它们都将搜索字符串的其余部分以进行匹配。 string text=”one two 3 4 five”; Regex num=new Regex(“[0-9]+”); //unfortunately num.IsMatch(text,0) also finds a match and returns true Console.WriteLine(“{0} {1}”,num.IsMatch(text, 8),num.IsMatch(text,0)); 显然,我可以检查结果匹配是否从我感兴趣的索引开始,但是我将在大字符串上执行此操作很多次,所以我不想浪费时间在字符串中搜索匹配项。 另外,我不会事先知道我将实际测试字符串的正则表达式。 我不想: 将字符串分割成某些边界,就像空格一样,因为在我的情况下,我事先并不知道合适的边界是什么 必须以任何方式修改输入字符串(比如在索引8处获取子字符串然后在正则表达式中使用^) 搜索字符串的其余部分以进行匹配,或者针对大字符串执行大量测试所不具备的其他任何内容。 我想使用任意用户提供的语法解析潜在的大型用户提供的文本正文。 语法将以BNF或类似PEG的语法定义,终端将是字符串文字或正则表达式。 因此,我需要检查字符串的下一部分是否与语法驱动的任何潜在终端匹配。