[英]Regex pattern for this string
我在匹配休止行中的某些字符串時遇到問題:
02-16 12:23:24.046 3068 3068 E AndroidRuntime: at android.view.WindowManagerImpl$CompatModeWrapper.addView(WindowManagerImpl.java:153)
02-16 12:23:24.046 3068 3068 E AndroidRuntime: at android.view.Window$LocalWindowManager.addView(Window.java:559)
02-16 12:23:24.046 3068 3068 E AndroidRuntime: at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:2716)
02-16 12:23:24.046 3068 3068 E AndroidRuntime: at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2151)
02-16 12:23:24.046 3068 3068 E AndroidRuntime: at android.app.ActivityThread.access$700(ActivityThread.java:140)
02-16 12:23:24.046 3068 3068 E AndroidRuntime: at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1238)
02-16 12:23:24.046 3068 3068 E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:99)
我想在最后兩個'('')'字符之間匹配字符串。 我知道有很多正則表達式教程,但我還無法獲得。 我需要對此進行更多研究
因此,成功的結果應該是:
WindowManagerImpl.java:153
Window.java:559
ActivityThread.java:2716
ActivityThread.java:2151
and so on
我所知道的是,並非總是有單詞“ java”,因此我想在最后一個“(””)之間取值
謝謝大家的線索
假設該行中沒有其他括號,則可以執行以下操作:
\([^)]+\)
然后,您可以在比賽結束時修剪(和)。
或分組內部文本:
\(([^)]+)\)
然后使用match.Groups [1] .Value獲取內部組的值。
更新:@cabecao提醒我,如果文本始終顯示在末尾,並且可能還有其他括號,則在末尾添加“ $”以匹配行尾。
\([^)]+\)$
您可以使用:
var matches = Regex.Matches(input, @"(?<=\().*(?=\))");
foreach (Match item in matches)
{
Console.WriteLine(item.Value);
}
我現在想到的最簡單的方法是:
.*\((.*)\)$
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.