1

私はこの3つの文字列を持っています:

xhtml.AddHtml( g_Lang.Text( Id,L_EXPORT_IS_NOT_SUPPORTED_FOR_THIS_ELEMENT ), false);
xhtml.AddHtml( g_Lang.Text(Id,  L_EXPORT_IS_NOT_SUPPORTED_FOR_THIS_ELEMENT ), false);
sGradeTitle = g_Lang.Text(CustomerID, nTitle, LanguageID);

3行目を受け入れ、1行目と2行目を受け入れない正規表現を書きたい:

.*g_Lang\.Text\(\s*[A-Za-z]*,\s*[here must be not L_].*

これは私が試したものです。修正するのを手伝ってもらえますか?

4

1 に答える 1

5

あなたは正しい軌道に乗っていました。(?!.*L_)代わりにを使用する必要があり(?!L_)ました。そこはどこでも先.*に検出します。L_

.*g_Lang\.Text\(\s*[A-Za-z]*,\s*(?!.*L_).*

最初の greedy.*を lazy に変換して、パフォーマンスを少し改善することもできます (バックトラッキングの数を減らすことによって)。

.*?g_Lang\.Text\(\s*[A-Za-z]*,\s*(?!.*L_).*
于 2013-09-26T12:50:09.603 に答える