Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#如何将文本框文本用作正则表达式或字符串_C#_Regex - Fatal编程技术网

C#如何将文本框文本用作正则表达式或字符串

C#如何将文本框文本用作正则表达式或字符串,c#,regex,C#,Regex,我有一个应用程序,用户可以指定一个提示。。。可以是正则表达式类型或字符串类型 用户有一个复选框,如果他选中该复选框,则提示变量将是字符串类型,如果不选中,则提示变量将是正则表达式 然后我需要能够在以后的程序中引用它 所以我想知道如何定义 目前我有以下几点: textbox1.text = "\[.*@.*\][\$|\#]" < --- that is a Regex 似乎您不应该将输入的正则表达式存储在字符串变量“userPrompt”中,而应该存储在正则表达式中,这样您就可以使用

我有一个应用程序,用户可以指定一个提示。。。可以是正则表达式类型或字符串类型

用户有一个复选框,如果他选中该复选框,则提示变量将是字符串类型,如果不选中,则提示变量将是正则表达式

然后我需要能够在以后的程序中引用它

所以我想知道如何定义

目前我有以下几点:

textbox1.text = "\[.*@.*\][\$|\#]"  < --- that is a Regex 

似乎您不应该将输入的正则表达式存储在字符串变量“userPrompt”中,而应该存储在正则表达式中,这样您就可以使用它了:

System.Text.RegularExpressions.Regex regex = new System.Text.RegularExpressions.Regex(textBoxp4RegPrompt.Text.Trim());
然后可以使用regex变量执行匹配:

System.Text.RegularExpressions.Match results = regex.Match(stringToTest);  
MessageBox.Show(results.Groups[0].Value);
MessageBox.Show(results.Groups[1].Value); 

您尚未发布所有相关代码。我们需要查看包含复选框的表单的HTML和文本字段。您已经具有复选框中的值。你还需要什么?@Patrick我需要能够获取textbox1.text值并将其用作正则表达式,但稍后在应用程序中使用。因此,当我需要使用它时,我必须能够将其用作字符串或正则表达式。。。但不确定是否可能,我想保持相同的名称,即userPrompt。。。无论它是什么类型……是否有什么东西阻止您将布尔值与userPrompt一起从复选框中传递?
System.Text.RegularExpressions.Regex regex = new System.Text.RegularExpressions.Regex(textBoxp4RegPrompt.Text.Trim());
System.Text.RegularExpressions.Match results = regex.Match(stringToTest);  
MessageBox.Show(results.Groups[0].Value);
MessageBox.Show(results.Groups[1].Value);