2014-01-31 2 views
-3

Как найти что-то вроде fo32p_dasf[0] = (string)"random string here"; с Regex.Match? У меня проблема с использованием (string) внутри строки регулярного выражения.Regex find string variable

+0

Просто использовать [Содержит] (http://msdn.microsoft.com/en-us/library/dy85x1sa(v=vs.110).aspx). Регулярное массовое переполнение для этого типа процедуры. – Liam

+0

'\ (string \)". *? ";'? – tenub

+0

Я в замешательстве ... вы производите этот строковый литерал как строку? Если да, то почему? –

ответ

0

Поскольку круглые скобки имеют специальное значение в Regex, вам необходимо побег их с обратной косой чертой.

Однако обратные косые черты также имеют смысл в строках C#, поэтому вам нужно избежать побега.

Квадратные скобки имеют специальное значение в регулярных выражениях, поэтому они должны бежать, и котировки нужно избежать, так что после всего этого, вы в конечном итоге с чем-то вроде этого:

var pattern = "fo32p_dasf\\[0\\] = \\(string\\)\".*\";";