我有一个与 c# 中的正则表达式有关的问题。
我想在 " 字符之间查找文本。示例:
Enum resultado = SPDialogBox.Instance.show<ACTION_ENUMs.TORNEO_SORTEAR>("Esto es una prueba");
火柴:Esto es una prueba
但是,在这个例子中
Enum resultado = SPDialogBox.Instance.show<ACTION_ENUMs.TORNEO_SORTEAR>("Esto es una prueba");
pKR_MESAPUESTOASIGNACION.CONFIGTORNEO_ID = Valid.GetInt(dr.Cells["CONFIGTORNEO_ID"].Value);
匹配:Esto es una prueba
但不能匹配CONFIGTORNEO_ID
,因为它写在方括号 ( []
)之间
简而言之,我想匹配双引号 ( "
) 字符之间的字符串,但该字符串不能写在方括号 ( []
) 之间。
这是我的代码:
var pattern = "\"(.*?)\"";
var matches = Regex.Matches(fullCode, pattern, RegexOptions.Multiline);
foreach (Match m in matches)
{
Console.WriteLine(m.Groups[1]);
}
该模式匹配字符之间的所有字符串"
,但是如何修改模式以排除写在方括号之间的那些字符串?
- 编辑 - -
这是另一个例子:
List<String> IdSorteados = new List<String>();
int TablesToSort = 0;
foreach (UltraGridRow dr in fg.hfg_Rows)
{
if (dr.Cells["MESA_ID"].Value == DBNull.Value && dr.Cells["Puesto"].Value == DBNull.Value && !Valid.GetBoolean(dr.Cells["BELIMINADO"].Value) && (Valid.GetBoolean(dr.Cells["Seleccionado"].Value) || SortearTodo))
TablesToSort++;
}
表达式不得匹配MESA_ID
(found within Cells["MESA_ID"].Value
) 或Puesto
(found within Cells["Puesto"].Value
)。它也不能匹配].Value == DBNull.Value && dr.Cells[
(在 中找到["MESA_ID"].Value == DBNull.Value && dr.Cells["Puesto"]
)
我希望我已经表达了我的意图。