Tag: regex

使用c#中的正则表达式返回包含匹配项的整行

假设我有以下字符串: string input = “Hello world\n” + “Hello foobar world\n” + “Hello foo world\n”; 我有”foobar”的正则表达式模式(由我正在编写的工具的用户指定)。 我想返回input中与表达式foobar匹配的每一行的整行。 所以在这个例子中,输出应该是Hello foobar world 。 如果模式是”foo” ,我想要返回: 你好foobar世界 你好foo字 这可能吗? 我的代码是 string pattern = “foobar”; Regex r = new Regex(pattern) foreach (Match m in r.Matches(input)) { Console.WriteLine(m.Value); } 运行此将输出: foob​​ar的 而不是: 你好foobar世界 如果string pattern = “foo”; 然后输出是: FOO FOO 而不是: […]

用逗号分隔字符串,忽略引号中的任何标点符号(包括’,’)

如何用逗号分隔字符串(来自文本框), 不包括双引号中的字符串( 不删除引号 ),以及其他可能的标点符号(例如’。”;” – ‘)? 例如,如果有人在文本框中输入以下内容: apple, orange, “baboons, cows”, rainbow, “unicorns, gummy bears” 如何将上面的字符串拆分为以下字符串(例如,放入List中)? apple orange “baboons, cows” rainbow “Unicorns, gummy bears…” 谢谢您的帮助!

‘string.Join(string,string )’的最佳重载方法匹配有一些无效的参数

我想在两个标签之间提取文本。 “txtReadfile”包含许多标记。 我想提取标签每次出现的所有文本。 我使用了以下代码。 但是当我运行它时,它会给出错误: Error # Error1 “The best overloaded method match for ‘string.Join(string, string[])’ has some invalid arguments” Error # “Argument ‘2’: cannot convert from ‘System.Collections.Generic.List’ to ‘string[]’ ” 你能帮我调试一下吗? List destList = new List(); string me = ” (.*?)”; string text =txtReadfile.Text; foreach (Match match in Regex.Matches(text, me)) destList.Add(match.Groups[1].Value); string output= string.Join(” […]

为什么没有特殊字符的正则表达式匹配更长的字符串?

我在使用此方法尝试查找匹配项,例如: Regex.Match(“A2-TS-OIL”, “TS-OIL”, RegexOptions.IgnoreCase).Success; 我得到了一个真实的结果。 我很迷惑。 我认为这应该返回false,因为模式中没有特殊字符。 如果我使用”.+TS-OIL” ,则应返回true( .对于任何和+对于多于1)。 我该怎么办才能得到我需要的东西?

当字段中存在逗号和括号时,如何解析逗号分隔的字符串

我在C#中有这个字符串 adj_con(CL2,1,3,0),adj_cont(CL1,1,3,0),NG, NG/CL, 5 value of CL(JK), HO 我想使用RegEx来解析它以获得以下内容: adj_con(CL2,1,3,0) adj_cont(CL1,1,3,0) NG NG/CL 5 value of CL(JK) HO 除了上面的例子,我测试了以下内容,但仍然无法正确解析它。 “%exc.uns: 8 hours let @ = ABC, DEF”, “exc_it = 1 day” , ” summ=graffe “, ” a,b,(c,d)” 新文本将在一个字符串中 string mystr = @”””%exc.uns: 8 hours let @ = ABC, DEF””, “”exc_it = 1 day”” , “” […]

在大字符串中查找浮点数

我有一个大字符串,在字符串中有一系列浮点数。 典型的字符串将具有Item X $4.50 Description of item \r\n\r\n Item Z $4.75…文本实际上没有押韵或原因。 我已经是最低的,我需要找到字符串中的所有值。 因此,如果它是10.00 ,它将找到10.05或更小的每个值。 我会假设某种正则表达式会涉及到找到值,然后我可以将它们放在一个数组中然后对它们进行排序。 因此,找到哪些值符合我的标准就是这样的。 int [] array; int arraysize; int lowvalue; int total; for(int i = 0; i<arraysize; ++i) { if(array[i] == lowvalue*1.05) ++total; } 我的问题是在数组中获取这些值。 我已经读过这个但是d +并不适用于浮点数。

查找具有额外资格标准的所有比赛

给出句子如; Boy has a dog and a cat. Boy microwaves a gerbil. Sally owns a cat. 对于每个句子,我想要一个动物列表(定义为’狗”猫’或’沙鼠’),其中“男孩”是第一个单词。 对于上面的列表,将是; [‘dog’, ‘cat’] [‘gerbil’] 3rd sentence would not match. 正则表达式; dog|cat|gerbil 将返回所有匹配,但不是特定于男孩(第三句将返回不受欢迎的’猫’)。 ^Boy.*(dog|cat|gerbil) 返回最后一个匹配动物的整个短语,例如“Boy has a dog and a cat”,而第一个也是唯一一个组是“cat”。 如何获得与“男孩”相关的所有动物的列表(即以“男孩”开头的句子中的动物)?

Regex.Split加号和减号

我有一个字符串1.5(+1.2/-0.5) 。 我想用正则表达式提取数值: {1.5, 1.2, 0.5} 。 我的计划是用( , + , /和- 。)拆分字符串。当我拆分时(和/ ,它拆分OK,但是如果我也加上+和- ,那么程序崩溃。 string[] foo = Regex.Split(“1.5(+1.5/-0.5)”, @”(?=[(/)])”); // OK string[] foo = Regex.Split(“1.5(+1.5/-0.5)”, @”(?=[(/+-)])”); // Exception catched 被捕获的例外是: System.ArgumentException:以相反的顺序解析“(?= [(/ + – )])” – [xy]范围

正则表达式匹配逗号分隔的字符串

我有以下字符串是合法的。 1-5,10-15 使用以下正则表达式,我得到一个错误的匹配。 ^[^-\s]*-?[^-\s]*$ 它适用于像 1-5,10 1,5 这些都是合法的。 但它不会处理逗号分隔范围。 我错过了什么?

使用C#中的RegEx提取逗号分隔的字符串部分

样本数据:!!部分| 123456,ABCDEF,ABC132 !! 逗号分隔列表可以是任何数量的alpha和数字的任意组合 我想要一个正则表达式来匹配逗号分隔列表中的条目: 我所拥有的是:!! PART \ |(\ w +)(?:,{1}(\ w +))* !! 这似乎做了这个工作,事情是我想要将它们检索到一个ArrayList或类似的,所以在我想要的样本数据中: 1 – 132456 2 – ABCDEF 3 – ABC123 我的代码是: string partRegularExpression = @”!!PART\|(\w+)(?:,{1}(\w+))*!!” Match match = Regex.Match(tag, partRegularExpression); ArrayList results = new ArrayList(); foreach (Group group in match.Groups) { results.Add(group.Value); } 但这给了我意想不到的结果。 我错过了什么? 谢谢 编辑:一个解决方案是使用正则表达式!! PART \ |(\ w […]